diff --git a/.gitignore b/.gitignore
index db116d50a..5a0365e76 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,6 +5,5 @@ node_modules
*.sublime-workspace
*.idea
*.iml
-lib/
npm-debug.log
.vscode
diff --git a/dist/react-bootstrap-table.js b/dist/react-bootstrap-table.js
index 7250c8e72..f9d0883b7 100644
--- a/dist/react-bootstrap-table.js
+++ b/dist/react-bootstrap-table.js
@@ -69,43 +69,43 @@ return /******/ (function(modules) { // webpackBootstrap
var _TableHeaderColumn2 = _interopRequireDefault(_TableHeaderColumn);
- var _InsertModalHeader = __webpack_require__(58);
+ var _InsertModalHeader = __webpack_require__(60);
var _InsertModalHeader2 = _interopRequireDefault(_InsertModalHeader);
- var _InsertModalBody = __webpack_require__(60);
+ var _InsertModalBody = __webpack_require__(62);
var _InsertModalBody2 = _interopRequireDefault(_InsertModalBody);
- var _InsertModalFooter = __webpack_require__(59);
+ var _InsertModalFooter = __webpack_require__(61);
var _InsertModalFooter2 = _interopRequireDefault(_InsertModalFooter);
- var _InsertButton = __webpack_require__(61);
+ var _InsertButton = __webpack_require__(63);
var _InsertButton2 = _interopRequireDefault(_InsertButton);
- var _DeleteButton = __webpack_require__(62);
+ var _DeleteButton = __webpack_require__(64);
var _DeleteButton2 = _interopRequireDefault(_DeleteButton);
- var _ExportCSVButton = __webpack_require__(63);
+ var _ExportCSVButton = __webpack_require__(65);
var _ExportCSVButton2 = _interopRequireDefault(_ExportCSVButton);
- var _ShowSelectedOnlyButton = __webpack_require__(64);
+ var _ShowSelectedOnlyButton = __webpack_require__(66);
var _ShowSelectedOnlyButton2 = _interopRequireDefault(_ShowSelectedOnlyButton);
- var _ClearSearchButton = __webpack_require__(66);
+ var _ClearSearchButton = __webpack_require__(68);
var _ClearSearchButton2 = _interopRequireDefault(_ClearSearchButton);
- var _SearchField = __webpack_require__(65);
+ var _SearchField = __webpack_require__(67);
var _SearchField2 = _interopRequireDefault(_SearchField);
- var _ButtonGroup = __webpack_require__(75);
+ var _ButtonGroup = __webpack_require__(77);
var _ButtonGroup2 = _interopRequireDefault(_ButtonGroup);
@@ -213,21 +213,21 @@ return /******/ (function(modules) { // webpackBootstrap
var _ToolBar2 = _interopRequireDefault(_ToolBar);
- var _TableFilter = __webpack_require__(67);
+ var _TableFilter = __webpack_require__(69);
var _TableFilter2 = _interopRequireDefault(_TableFilter);
- var _TableDataStore = __webpack_require__(68);
+ var _TableDataStore = __webpack_require__(70);
var _util = __webpack_require__(24);
var _util2 = _interopRequireDefault(_util);
- var _csv_export_util = __webpack_require__(69);
+ var _csv_export_util = __webpack_require__(71);
var _csv_export_util2 = _interopRequireDefault(_csv_export_util);
- var _Filter = __webpack_require__(73);
+ var _Filter = __webpack_require__(75);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -703,9 +703,13 @@ return /******/ (function(modules) { // webpackBootstrap
};
});
}
+
+ /* eslint-disable */
+
}, {
- key: 'componentWillReceiveProps',
- value: function componentWillReceiveProps(nextProps) {
+ key: 'UNSAFE_componentWillReceiveProps',
+ value: function UNSAFE_componentWillReceiveProps(nextProps) {
+ /* eslint-enable */
this.initTable(nextProps);
var options = nextProps.options,
selectRow = nextProps.selectRow;
@@ -813,6 +817,16 @@ return /******/ (function(modules) { // webpackBootstrap
};
});
}
+
+ if (selectRow && selectRow.mode !== 'none' && this.state.y !== 0) {
+ // If user switched to select row, reset the focus to the first cell
+ this.setState(function () {
+ return {
+ y: 0,
+ x: 0
+ };
+ });
+ }
} else {
this.reset();
}
@@ -1234,14 +1248,30 @@ return /******/ (function(modules) { // webpackBootstrap
y = _state.y,
currPage = _state.currPage;
- x += offSetX;
- y += offSetY;
var columns = this.store.getColInfos();
+ var visibleColumnIndices = Object.keys(columns).map(function (k, index) {
+ return columns[k].hidden ? -1 : index;
+ }).filter(function (k) {
+ return k !== -1;
+ });
+
+ if (visibleColumnIndices.indexOf(x) === 0 && offSetX < 0) {
+ x = -1;
+ } else if (visibleColumnIndices.indexOf(x) === visibleColumnIndices.length - 1 && offSetX >= 1) {
+ x = Object.keys(columns).length;
+ } else {
+ x = visibleColumnIndices[visibleColumnIndices.indexOf(x) + offSetX];
+ }
+ y += offSetY;
+
var visibleRowSize = this.state.data.length;
var visibleColumnSize = Object.keys(columns).filter(function (k) {
return !columns[k].hidden;
}).length;
+ var hiddenColumnSize = Object.keys(columns).filter(function (k) {
+ return columns[k].hidden;
+ }).length;
if (y >= visibleRowSize) {
currPage++;
@@ -1260,7 +1290,7 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
y = visibleRowSize - 1;
- } else if (x >= visibleColumnSize) {
+ } else if (x - hiddenColumnSize >= visibleColumnSize) {
if (y + 1 === visibleRowSize) {
currPage++;
var _lastPage = pagination ? this.pagination.getLastPage() : -1;
@@ -1273,9 +1303,9 @@ return /******/ (function(modules) { // webpackBootstrap
} else {
y++;
}
- x = lastEditCell ? 1 : 0;
+ x = lastEditCell ? visibleColumnIndices[1] : visibleColumnIndices[0];
} else if (x < 0) {
- x = visibleColumnSize - 1;
+ x = visibleColumnIndices[visibleColumnIndices.length - 1];
if (y === 0) {
currPage--;
if (currPage > 0) {
@@ -2555,9 +2585,9 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(BootstrapTable, 'BootstrapTable', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/BootstrapTable.js');
+ __REACT_HOT_LOADER__.register(BootstrapTable, 'BootstrapTable', '/home/nogi/nogi/forks/react-bootstrap-table/src/BootstrapTable.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/BootstrapTable.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/BootstrapTable.js');
}();
;
@@ -2580,21 +2610,12 @@ return /******/ (function(modules) { // webpackBootstrap
*/
if (process.env.NODE_ENV !== 'production') {
- var REACT_ELEMENT_TYPE = (typeof Symbol === 'function' &&
- Symbol.for &&
- Symbol.for('react.element')) ||
- 0xeac7;
-
- var isValidElement = function(object) {
- return typeof object === 'object' &&
- object !== null &&
- object.$$typeof === REACT_ELEMENT_TYPE;
- };
+ var ReactIs = __webpack_require__(5);
// By explicitly using `prop-types` you are opting into new development behavior.
// http://fb.me/prop-types-in-prod
var throwOnDirectAccess = true;
- module.exports = __webpack_require__(5)(isValidElement, throwOnDirectAccess);
+ module.exports = __webpack_require__(8)(ReactIs.isElement, throwOnDirectAccess);
} else {
// By explicitly using `prop-types` you are opting into new production behavior.
// http://fb.me/prop-types-in-prod
@@ -2795,6 +2816,229 @@ return /******/ (function(modules) { // webpackBootstrap
/***/ }),
/* 5 */
+/***/ (function(module, exports, __webpack_require__) {
+
+ /* WEBPACK VAR INJECTION */(function(process) {'use strict';
+
+ if (process.env.NODE_ENV === 'production') {
+ module.exports = __webpack_require__(6);
+ } else {
+ module.exports = __webpack_require__(7);
+ }
+
+ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(4)))
+
+/***/ }),
+/* 6 */
+/***/ (function(module, exports) {
+
+ /** @license React v16.13.1
+ * react-is.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';var b="function"===typeof Symbol&&Symbol.for,c=b?Symbol.for("react.element"):60103,d=b?Symbol.for("react.portal"):60106,e=b?Symbol.for("react.fragment"):60107,f=b?Symbol.for("react.strict_mode"):60108,g=b?Symbol.for("react.profiler"):60114,h=b?Symbol.for("react.provider"):60109,k=b?Symbol.for("react.context"):60110,l=b?Symbol.for("react.async_mode"):60111,m=b?Symbol.for("react.concurrent_mode"):60111,n=b?Symbol.for("react.forward_ref"):60112,p=b?Symbol.for("react.suspense"):60113,q=b?
+ Symbol.for("react.suspense_list"):60120,r=b?Symbol.for("react.memo"):60115,t=b?Symbol.for("react.lazy"):60116,v=b?Symbol.for("react.block"):60121,w=b?Symbol.for("react.fundamental"):60117,x=b?Symbol.for("react.responder"):60118,y=b?Symbol.for("react.scope"):60119;
+ function z(a){if("object"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;
+ exports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return"object"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};
+ exports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};
+ exports.isValidElementType=function(a){return"string"===typeof a||"function"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||"object"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;
+
+
+/***/ }),
+/* 7 */
+/***/ (function(module, exports, __webpack_require__) {
+
+ /* WEBPACK VAR INJECTION */(function(process) {/** @license React v16.13.1
+ * react-is.development.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';
+
+
+
+ if (process.env.NODE_ENV !== "production") {
+ (function() {
+ 'use strict';
+
+ // The Symbol used to tag the ReactElement-like types. If there is no native Symbol
+ // nor polyfill, then a plain number is used for performance.
+ var hasSymbol = typeof Symbol === 'function' && Symbol.for;
+ var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
+ var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
+ var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
+ var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
+ var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
+ var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
+ var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
+ // (unstable) APIs that have been removed. Can we remove the symbols?
+
+ var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
+ var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
+ var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
+ var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
+ var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
+ var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
+ var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
+ var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
+ var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
+ var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
+ var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;
+
+ function isValidElementType(type) {
+ return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
+ type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);
+ }
+
+ function typeOf(object) {
+ if (typeof object === 'object' && object !== null) {
+ var $$typeof = object.$$typeof;
+
+ switch ($$typeof) {
+ case REACT_ELEMENT_TYPE:
+ var type = object.type;
+
+ switch (type) {
+ case REACT_ASYNC_MODE_TYPE:
+ case REACT_CONCURRENT_MODE_TYPE:
+ case REACT_FRAGMENT_TYPE:
+ case REACT_PROFILER_TYPE:
+ case REACT_STRICT_MODE_TYPE:
+ case REACT_SUSPENSE_TYPE:
+ return type;
+
+ default:
+ var $$typeofType = type && type.$$typeof;
+
+ switch ($$typeofType) {
+ case REACT_CONTEXT_TYPE:
+ case REACT_FORWARD_REF_TYPE:
+ case REACT_LAZY_TYPE:
+ case REACT_MEMO_TYPE:
+ case REACT_PROVIDER_TYPE:
+ return $$typeofType;
+
+ default:
+ return $$typeof;
+ }
+
+ }
+
+ case REACT_PORTAL_TYPE:
+ return $$typeof;
+ }
+ }
+
+ return undefined;
+ } // AsyncMode is deprecated along with isAsyncMode
+
+ var AsyncMode = REACT_ASYNC_MODE_TYPE;
+ var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
+ var ContextConsumer = REACT_CONTEXT_TYPE;
+ var ContextProvider = REACT_PROVIDER_TYPE;
+ var Element = REACT_ELEMENT_TYPE;
+ var ForwardRef = REACT_FORWARD_REF_TYPE;
+ var Fragment = REACT_FRAGMENT_TYPE;
+ var Lazy = REACT_LAZY_TYPE;
+ var Memo = REACT_MEMO_TYPE;
+ var Portal = REACT_PORTAL_TYPE;
+ var Profiler = REACT_PROFILER_TYPE;
+ var StrictMode = REACT_STRICT_MODE_TYPE;
+ var Suspense = REACT_SUSPENSE_TYPE;
+ var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated
+
+ function isAsyncMode(object) {
+ {
+ if (!hasWarnedAboutDeprecatedIsAsyncMode) {
+ hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
+
+ console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');
+ }
+ }
+
+ return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
+ }
+ function isConcurrentMode(object) {
+ return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
+ }
+ function isContextConsumer(object) {
+ return typeOf(object) === REACT_CONTEXT_TYPE;
+ }
+ function isContextProvider(object) {
+ return typeOf(object) === REACT_PROVIDER_TYPE;
+ }
+ function isElement(object) {
+ return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
+ }
+ function isForwardRef(object) {
+ return typeOf(object) === REACT_FORWARD_REF_TYPE;
+ }
+ function isFragment(object) {
+ return typeOf(object) === REACT_FRAGMENT_TYPE;
+ }
+ function isLazy(object) {
+ return typeOf(object) === REACT_LAZY_TYPE;
+ }
+ function isMemo(object) {
+ return typeOf(object) === REACT_MEMO_TYPE;
+ }
+ function isPortal(object) {
+ return typeOf(object) === REACT_PORTAL_TYPE;
+ }
+ function isProfiler(object) {
+ return typeOf(object) === REACT_PROFILER_TYPE;
+ }
+ function isStrictMode(object) {
+ return typeOf(object) === REACT_STRICT_MODE_TYPE;
+ }
+ function isSuspense(object) {
+ return typeOf(object) === REACT_SUSPENSE_TYPE;
+ }
+
+ exports.AsyncMode = AsyncMode;
+ exports.ConcurrentMode = ConcurrentMode;
+ exports.ContextConsumer = ContextConsumer;
+ exports.ContextProvider = ContextProvider;
+ exports.Element = Element;
+ exports.ForwardRef = ForwardRef;
+ exports.Fragment = Fragment;
+ exports.Lazy = Lazy;
+ exports.Memo = Memo;
+ exports.Portal = Portal;
+ exports.Profiler = Profiler;
+ exports.StrictMode = StrictMode;
+ exports.Suspense = Suspense;
+ exports.isAsyncMode = isAsyncMode;
+ exports.isConcurrentMode = isConcurrentMode;
+ exports.isContextConsumer = isContextConsumer;
+ exports.isContextProvider = isContextProvider;
+ exports.isElement = isElement;
+ exports.isForwardRef = isForwardRef;
+ exports.isFragment = isFragment;
+ exports.isLazy = isLazy;
+ exports.isMemo = isMemo;
+ exports.isPortal = isPortal;
+ exports.isProfiler = isProfiler;
+ exports.isStrictMode = isStrictMode;
+ exports.isSuspense = isSuspense;
+ exports.isValidElementType = isValidElementType;
+ exports.typeOf = typeOf;
+ })();
+ }
+
+ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(4)))
+
+/***/ }),
+/* 8 */
/***/ (function(module, exports, __webpack_require__) {
/* WEBPACK VAR INJECTION */(function(process) {/**
@@ -2806,14 +3050,34 @@ return /******/ (function(modules) { // webpackBootstrap
'use strict';
- var emptyFunction = __webpack_require__(6);
- var invariant = __webpack_require__(7);
- var warning = __webpack_require__(8);
+ var ReactIs = __webpack_require__(5);
var assign = __webpack_require__(9);
var ReactPropTypesSecret = __webpack_require__(10);
var checkPropTypes = __webpack_require__(11);
+ var has = Function.call.bind(Object.prototype.hasOwnProperty);
+ var printWarning = function() {};
+
+ if (process.env.NODE_ENV !== 'production') {
+ printWarning = function(text) {
+ var message = 'Warning: ' + text;
+ if (typeof console !== 'undefined') {
+ console.error(message);
+ }
+ try {
+ // --- Welcome to debugging React ---
+ // This error was thrown as a convenience so that you can use this stack
+ // to find the callsite that caused this warning to fire.
+ throw new Error(message);
+ } catch (x) {}
+ };
+ }
+
+ function emptyFunctionThatReturnsNull() {
+ return null;
+ }
+
module.exports = function(isValidElement, throwOnDirectAccess) {
/* global Symbol */
var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
@@ -2903,6 +3167,7 @@ return /******/ (function(modules) { // webpackBootstrap
any: createAnyTypeChecker(),
arrayOf: createArrayOfTypeChecker,
element: createElementTypeChecker(),
+ elementType: createElementTypeTypeChecker(),
instanceOf: createInstanceTypeChecker,
node: createNodeChecker(),
objectOf: createObjectOfTypeChecker,
@@ -2956,12 +3221,13 @@ return /******/ (function(modules) { // webpackBootstrap
if (secret !== ReactPropTypesSecret) {
if (throwOnDirectAccess) {
// New behavior only for users of `prop-types` package
- invariant(
- false,
+ var err = new Error(
'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
'Use `PropTypes.checkPropTypes()` to call them. ' +
'Read more at http://fb.me/use-check-prop-types'
);
+ err.name = 'Invariant Violation';
+ throw err;
} else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {
// Old behavior for people using React.PropTypes
var cacheKey = componentName + ':' + propName;
@@ -2970,15 +3236,12 @@ return /******/ (function(modules) { // webpackBootstrap
// Avoid spamming the console because they are often not actionable except for lib authors
manualPropTypeWarningCount < 3
) {
- warning(
- false,
+ printWarning(
'You are manually calling a React.PropTypes validation ' +
- 'function for the `%s` prop on `%s`. This is deprecated ' +
+ 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +
'and will throw in the standalone `prop-types` package. ' +
'You may be seeing this warning due to a third-party PropTypes ' +
- 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.',
- propFullName,
- componentName
+ 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'
);
manualPropTypeCallCache[cacheKey] = true;
manualPropTypeWarningCount++;
@@ -3022,7 +3285,7 @@ return /******/ (function(modules) { // webpackBootstrap
}
function createAnyTypeChecker() {
- return createChainableTypeChecker(emptyFunction.thatReturnsNull);
+ return createChainableTypeChecker(emptyFunctionThatReturnsNull);
}
function createArrayOfTypeChecker(typeChecker) {
@@ -3058,6 +3321,18 @@ return /******/ (function(modules) { // webpackBootstrap
return createChainableTypeChecker(validate);
}
+ function createElementTypeTypeChecker() {
+ function validate(props, propName, componentName, location, propFullName) {
+ var propValue = props[propName];
+ if (!ReactIs.isValidElementType(propValue)) {
+ var propType = getPropType(propValue);
+ return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));
+ }
+ return null;
+ }
+ return createChainableTypeChecker(validate);
+ }
+
function createInstanceTypeChecker(expectedClass) {
function validate(props, propName, componentName, location, propFullName) {
if (!(props[propName] instanceof expectedClass)) {
@@ -3072,8 +3347,17 @@ return /******/ (function(modules) { // webpackBootstrap
function createEnumTypeChecker(expectedValues) {
if (!Array.isArray(expectedValues)) {
- process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOf, expected an instance of array.') : void 0;
- return emptyFunction.thatReturnsNull;
+ if (process.env.NODE_ENV !== 'production') {
+ if (arguments.length > 1) {
+ printWarning(
+ 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +
+ 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'
+ );
+ } else {
+ printWarning('Invalid argument supplied to oneOf, expected an array.');
+ }
+ }
+ return emptyFunctionThatReturnsNull;
}
function validate(props, propName, componentName, location, propFullName) {
@@ -3084,8 +3368,14 @@ return /******/ (function(modules) { // webpackBootstrap
}
}
- var valuesString = JSON.stringify(expectedValues);
- return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
+ var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {
+ var type = getPreciseType(value);
+ if (type === 'symbol') {
+ return String(value);
+ }
+ return value;
+ });
+ return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
}
return createChainableTypeChecker(validate);
}
@@ -3101,7 +3391,7 @@ return /******/ (function(modules) { // webpackBootstrap
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
}
for (var key in propValue) {
- if (propValue.hasOwnProperty(key)) {
+ if (has(propValue, key)) {
var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
if (error instanceof Error) {
return error;
@@ -3115,21 +3405,18 @@ return /******/ (function(modules) { // webpackBootstrap
function createUnionTypeChecker(arrayOfTypeCheckers) {
if (!Array.isArray(arrayOfTypeCheckers)) {
- process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;
- return emptyFunction.thatReturnsNull;
+ process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;
+ return emptyFunctionThatReturnsNull;
}
for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
var checker = arrayOfTypeCheckers[i];
if (typeof checker !== 'function') {
- warning(
- false,
+ printWarning(
'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +
- 'received %s at index %s.',
- getPostfixForTypeWarning(checker),
- i
+ 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'
);
- return emptyFunction.thatReturnsNull;
+ return emptyFunctionThatReturnsNull;
}
}
@@ -3261,6 +3548,11 @@ return /******/ (function(modules) { // webpackBootstrap
return true;
}
+ // falsy value can't be a Symbol
+ if (!propValue) {
+ return false;
+ }
+
// 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'
if (propValue['@@toStringTag'] === 'Symbol') {
return true;
@@ -3335,6 +3627,7 @@ return /******/ (function(modules) { // webpackBootstrap
}
ReactPropTypes.checkPropTypes = checkPropTypes;
+ ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;
ReactPropTypes.PropTypes = ReactPropTypes;
return ReactPropTypes;
@@ -3342,174 +3635,6 @@ return /******/ (function(modules) { // webpackBootstrap
/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(4)))
-/***/ }),
-/* 6 */
-/***/ (function(module, exports) {
-
- "use strict";
-
- /**
- * Copyright (c) 2013-present, Facebook, Inc.
- *
- * This source code is licensed under the MIT license found in the
- * LICENSE file in the root directory of this source tree.
- *
- *
- */
-
- function makeEmptyFunction(arg) {
- return function () {
- return arg;
- };
- }
-
- /**
- * This function accepts and discards inputs; it has no side effects. This is
- * primarily useful idiomatically for overridable function endpoints which
- * always need to be callable, since JS lacks a null-call idiom ala Cocoa.
- */
- var emptyFunction = function emptyFunction() {};
-
- emptyFunction.thatReturns = makeEmptyFunction;
- emptyFunction.thatReturnsFalse = makeEmptyFunction(false);
- emptyFunction.thatReturnsTrue = makeEmptyFunction(true);
- emptyFunction.thatReturnsNull = makeEmptyFunction(null);
- emptyFunction.thatReturnsThis = function () {
- return this;
- };
- emptyFunction.thatReturnsArgument = function (arg) {
- return arg;
- };
-
- module.exports = emptyFunction;
-
-/***/ }),
-/* 7 */
-/***/ (function(module, exports, __webpack_require__) {
-
- /* WEBPACK VAR INJECTION */(function(process) {/**
- * Copyright (c) 2013-present, Facebook, Inc.
- *
- * This source code is licensed under the MIT license found in the
- * LICENSE file in the root directory of this source tree.
- *
- */
-
- 'use strict';
-
- /**
- * 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.
- *
- * The invariant message will be stripped in production, but the invariant
- * will remain to ensure logic does not differ in production.
- */
-
- var validateFormat = function validateFormat(format) {};
-
- if (process.env.NODE_ENV !== 'production') {
- validateFormat = function validateFormat(format) {
- if (format === undefined) {
- throw new Error('invariant requires an error message argument');
- }
- };
- }
-
- function invariant(condition, format, a, b, c, d, e, f) {
- 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++];
- }));
- error.name = 'Invariant Violation';
- }
-
- error.framesToPop = 1; // we don't care about invariant's own frame
- throw error;
- }
- }
-
- module.exports = invariant;
- /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(4)))
-
-/***/ }),
-/* 8 */
-/***/ (function(module, exports, __webpack_require__) {
-
- /* WEBPACK VAR INJECTION */(function(process) {/**
- * Copyright (c) 2014-present, Facebook, Inc.
- *
- * 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 emptyFunction = __webpack_require__(6);
-
- /**
- * Similar to invariant but only logs a warning if the condition is not met.
- * This can be used to log issues in development environments in critical
- * paths. Removing the logging code for production environments will keep the
- * same logic and follow the same code paths.
- */
-
- var warning = emptyFunction;
-
- if (process.env.NODE_ENV !== 'production') {
- var printWarning = function printWarning(format) {
- for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
- args[_key - 1] = arguments[_key];
- }
-
- var argIndex = 0;
- var message = 'Warning: ' + format.replace(/%s/g, function () {
- return args[argIndex++];
- });
- if (typeof console !== 'undefined') {
- console.error(message);
- }
- try {
- // --- Welcome to debugging React ---
- // This error was thrown as a convenience so that you can use this stack
- // to find the callsite that caused this warning to fire.
- throw new Error(message);
- } catch (x) {}
- };
-
- warning = function warning(condition, format) {
- if (format === undefined) {
- throw new Error('`warning(condition, format, ...args)` requires a warning ' + 'message argument');
- }
-
- if (format.indexOf('Failed Composite propType: ') === 0) {
- return; // Ignore CompositeComponent proptype check.
- }
-
- if (!condition) {
- for (var _len2 = arguments.length, args = Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {
- args[_key2 - 2] = arguments[_key2];
- }
-
- printWarning.apply(undefined, [format].concat(args));
- }
- };
- }
-
- module.exports = warning;
- /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(4)))
-
/***/ }),
/* 9 */
/***/ (function(module, exports) {
@@ -3637,11 +3762,25 @@ return /******/ (function(modules) { // webpackBootstrap
'use strict';
+ var printWarning = function() {};
+
if (process.env.NODE_ENV !== 'production') {
- var invariant = __webpack_require__(7);
- var warning = __webpack_require__(8);
var ReactPropTypesSecret = __webpack_require__(10);
var loggedTypeFailures = {};
+ var has = Function.call.bind(Object.prototype.hasOwnProperty);
+
+ printWarning = function(text) {
+ var message = 'Warning: ' + text;
+ if (typeof console !== 'undefined') {
+ console.error(message);
+ }
+ try {
+ // --- Welcome to debugging React ---
+ // This error was thrown as a convenience so that you can use this stack
+ // to find the callsite that caused this warning to fire.
+ throw new Error(message);
+ } catch (x) {}
+ };
}
/**
@@ -3658,7 +3797,7 @@ return /******/ (function(modules) { // webpackBootstrap
function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
if (process.env.NODE_ENV !== 'production') {
for (var typeSpecName in typeSpecs) {
- if (typeSpecs.hasOwnProperty(typeSpecName)) {
+ if (has(typeSpecs, typeSpecName)) {
var error;
// Prop type validation may throw. In case they do, we don't want to
// fail the render phase where it didn't fail before. So we log it.
@@ -3666,12 +3805,28 @@ return /******/ (function(modules) { // webpackBootstrap
try {
// This is intentionally an invariant that gets caught. It's the same
// behavior as without this statement except with a better message.
- invariant(typeof typeSpecs[typeSpecName] === 'function', '%s: %s type `%s` is invalid; it must be a function, usually from ' + 'the `prop-types` package, but received `%s`.', componentName || 'React class', location, typeSpecName, typeof typeSpecs[typeSpecName]);
+ if (typeof typeSpecs[typeSpecName] !== 'function') {
+ var err = Error(
+ (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +
+ 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.'
+ );
+ err.name = 'Invariant Violation';
+ throw err;
+ }
error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
} catch (ex) {
error = ex;
}
- warning(!error || error instanceof Error, '%s: type specification of %s `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error);
+ if (error && !(error instanceof Error)) {
+ printWarning(
+ (componentName || 'React class') + ': type specification of ' +
+ location + ' `' + typeSpecName + '` is invalid; the type checker ' +
+ 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +
+ 'You may have forgotten to pass an argument to the type checker ' +
+ 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +
+ 'shape all require an argument).'
+ );
+ }
if (error instanceof Error && !(error.message in loggedTypeFailures)) {
// Only monitor this failure once because there tends to be a lot of the
// same error.
@@ -3679,13 +3834,26 @@ return /******/ (function(modules) { // webpackBootstrap
var stack = getStack ? getStack() : '';
- warning(false, 'Failed %s type: %s%s', location, error.message, stack != null ? stack : '');
+ printWarning(
+ 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')
+ );
}
}
}
}
}
+ /**
+ * Resets warning cache when testing.
+ *
+ * @private
+ */
+ checkPropTypes.resetWarningCache = function() {
+ if (process.env.NODE_ENV !== 'production') {
+ loggedTypeFailures = {};
+ }
+ }
+
module.exports = checkPropTypes;
/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(4)))
@@ -3703,22 +3871,25 @@ return /******/ (function(modules) { // webpackBootstrap
'use strict';
- var emptyFunction = __webpack_require__(6);
- var invariant = __webpack_require__(7);
var ReactPropTypesSecret = __webpack_require__(10);
+ function emptyFunction() {}
+ function emptyFunctionWithReset() {}
+ emptyFunctionWithReset.resetWarningCache = emptyFunction;
+
module.exports = function() {
function shim(props, propName, componentName, location, propFullName, secret) {
if (secret === ReactPropTypesSecret) {
// It is still safe when called from React.
return;
}
- invariant(
- false,
+ var err = new Error(
'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
'Use PropTypes.checkPropTypes() to call them. ' +
'Read more at http://fb.me/use-check-prop-types'
);
+ err.name = 'Invariant Violation';
+ throw err;
};
shim.isRequired = shim;
function getShim() {
@@ -3738,16 +3909,19 @@ return /******/ (function(modules) { // webpackBootstrap
any: shim,
arrayOf: getShim,
element: shim,
+ elementType: shim,
instanceOf: getShim,
node: shim,
objectOf: getShim,
oneOf: getShim,
oneOfType: getShim,
shape: getShim,
- exact: getShim
+ exact: getShim,
+
+ checkPropTypes: emptyFunctionWithReset,
+ resetWarningCache: emptyFunction
};
- ReactPropTypes.checkPropTypes = emptyFunction;
ReactPropTypes.PropTypes = ReactPropTypes;
return ReactPropTypes;
@@ -3759,7 +3933,7 @@ return /******/ (function(modules) { // webpackBootstrap
/***/ (function(module, exports, __webpack_require__) {
var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
- Copyright (c) 2016 Jed Watson.
+ Copyright (c) 2017 Jed Watson.
Licensed under the MIT License (MIT), see
http://jedwatson.github.io/classnames
*/
@@ -3781,8 +3955,11 @@ return /******/ (function(modules) { // webpackBootstrap
if (argType === 'string' || argType === 'number') {
classes.push(arg);
- } else if (Array.isArray(arg)) {
- classes.push(classNames.apply(null, arg));
+ } else if (Array.isArray(arg) && arg.length) {
+ var inner = classNames.apply(null, arg);
+ if (inner) {
+ classes.push(inner);
+ }
} else if (argType === 'object') {
for (var key in arg) {
if (hasOwn.call(arg, key) && arg[key]) {
@@ -3796,6 +3973,7 @@ return /******/ (function(modules) { // webpackBootstrap
}
if (typeof module !== 'undefined' && module.exports) {
+ classNames.default = classNames;
module.exports = classNames;
} else if (true) {
// register as 'classnames', consistent with npm package name
@@ -3961,12 +4139,12 @@ return /******/ (function(modules) { // webpackBootstrap
requestAnimationFrame(function () {
return requestAnimationFrame(function () {
var length = void 0;
- storeStateRight = (0, _sAlertDataPrep2.default)('right') || [];
+ storeStateRight = (0, _sAlertDataPrep2.default)('right', _this2) || [];
length = storeStateRight.length;
if (_this2.props.stack && _this2.props.stack.limit && length > _this2.props.stack.limit) {
var id = storeStateRight[0].id;
_sAlertStore2.default.dispatch({ type: 'REMOVE', data: { id: id } });
- storeStateRight = (0, _sAlertDataPrep2.default)('right') || [];
+ storeStateRight = (0, _sAlertDataPrep2.default)('right', _this2) || [];
}
_this2.setState({ dataRight: storeStateRight });
});
@@ -3978,12 +4156,12 @@ return /******/ (function(modules) { // webpackBootstrap
requestAnimationFrame(function () {
return requestAnimationFrame(function () {
var length = void 0;
- storeStateLeft = (0, _sAlertDataPrep2.default)('left') || [];
+ storeStateLeft = (0, _sAlertDataPrep2.default)('left', _this2) || [];
length = storeStateLeft.length;
if (_this2.props.stack && _this2.props.stack.limit && length > _this2.props.stack.limit) {
var id = storeStateLeft[0].id;
_sAlertStore2.default.dispatch({ type: 'REMOVE', data: { id: id } });
- storeStateLeft = (0, _sAlertDataPrep2.default)('left') || [];
+ storeStateLeft = (0, _sAlertDataPrep2.default)('left', _this2) || [];
}
_this2.setState({ dataLeft: storeStateLeft });
});
@@ -3995,12 +4173,12 @@ return /******/ (function(modules) { // webpackBootstrap
requestAnimationFrame(function () {
return requestAnimationFrame(function () {
var length = void 0;
- storeStateTop = (0, _sAlertDataPrep2.default)('full-top') || [];
+ storeStateTop = (0, _sAlertDataPrep2.default)('full-top', _this2) || [];
length = storeStateTop.length;
if (_this2.props.stack && _this2.props.stack.limit && length > _this2.props.stack.limit) {
var id = storeStateTop[0].id;
_sAlertStore2.default.dispatch({ type: 'REMOVE', data: { id: id } });
- storeStateTop = (0, _sAlertDataPrep2.default)('full-top') || [];
+ storeStateTop = (0, _sAlertDataPrep2.default)('full-top', _this2) || [];
}
_this2.setState({ dataTop: storeStateTop });
});
@@ -4012,12 +4190,12 @@ return /******/ (function(modules) { // webpackBootstrap
requestAnimationFrame(function () {
return requestAnimationFrame(function () {
var length = void 0;
- storeStateBottom = (0, _sAlertDataPrep2.default)('full-bottom') || [];
+ storeStateBottom = (0, _sAlertDataPrep2.default)('full-bottom', _this2) || [];
length = storeStateBottom.length;
if (_this2.props.stack && _this2.props.stack.limit && length > _this2.props.stack.limit) {
var id = storeStateBottom[0].id;
_sAlertStore2.default.dispatch({ type: 'REMOVE', data: { id: id } });
- storeStateBottom = (0, _sAlertDataPrep2.default)('full-bottom') || [];
+ storeStateBottom = (0, _sAlertDataPrep2.default)('full-bottom', _this2) || [];
}
_this2.setState({ dataBottom: storeStateBottom });
});
@@ -4034,7 +4212,8 @@ return /******/ (function(modules) { // webpackBootstrap
stack: this.props.stack,
html: this.props.html,
customFields: this.props.customFields,
- position: this.props.position || 'top-right'
+ position: this.props.position || 'top-right',
+ preserveContext: this.props.preserveContext || false
};
_sAlertTools2.default.setGlobalConfig(globalConfig);
}
@@ -4067,6 +4246,7 @@ return /******/ (function(modules) { // webpackBootstrap
var onShow = _sAlertTools2.default.returnFirstDefined(alert.onShow, _this3.props.onShow);
var customFields = _sAlertTools2.default.returnFirstDefined(alert.customFields, _this3.props.customFields);
var contentTemplate = _this3.props.contentTemplate;
+
return _react2.default.createElement(_SAlertContent2.default, {
key: customKey,
id: id,
@@ -4140,6 +4320,7 @@ return /******/ (function(modules) { // webpackBootstrap
beep: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object, _propTypes2.default.bool]),
timeout: _propTypes2.default.oneOfType([_propTypes2.default.oneOf(['none']), _propTypes2.default.number]),
html: _propTypes2.default.bool,
+ preserveContext: _propTypes2.default.bool,
onClose: _propTypes2.default.func,
onShow: _propTypes2.default.func,
customFields: _propTypes2.default.object,
@@ -4344,8 +4525,9 @@ return /******/ (function(modules) { // webpackBootstrap
var handleClose = this.handleCloseAlert.bind(this);
var contentTemplate = this.props.contentTemplate || _SAlertContentTmpl2.default;
var customFields = this.props.customFields || {};
+ var condition = this.props.condition;
- return _react2.default.createElement(contentTemplate, { classNames: classNames, id: id, styles: styles, message: message, handleClose: handleClose, customFields: customFields });
+ return _react2.default.createElement(contentTemplate, { classNames: classNames, id: id, styles: styles, message: message, handleClose: handleClose, customFields: customFields, condition: condition });
}
}]);
@@ -4664,6 +4846,7 @@ return /******/ (function(modules) { // webpackBootstrap
SAlertContentTmpl.propTypes = {
id: _propTypes2.default.string.isRequired,
classNames: _propTypes2.default.string.isRequired,
+ condition: _propTypes2.default.string.isRequired,
styles: _propTypes2.default.object.isRequired,
message: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]).isRequired,
handleClose: _propTypes2.default.func.isRequired,
@@ -4726,7 +4909,7 @@ return /******/ (function(modules) { // webpackBootstrap
return target;
};
- var getAlertData = function getAlertData(sAlertPosition) {
+ var getAlertData = function getAlertData(sAlertPosition, parentComponent) {
var positionTop = 0;
var positionBottom = 0;
var padding = 0;
@@ -4766,6 +4949,7 @@ return /******/ (function(modules) { // webpackBootstrap
var aHtml = void 0;
var aCustomFields = void 0;
var aPosition = void 0;
+ var preserveContext = void 0;
var query = {};
if (sAlertPosition === 'left') {
@@ -4800,8 +4984,10 @@ return /******/ (function(modules) { // webpackBootstrap
aHtml = _sAlertTools2.default.returnFirstDefined(alert.html, sAlertGlobalConfig.html);
aCustomFields = _sAlertTools2.default.returnFirstDefined(alert.customFields, sAlertGlobalConfig.customFields);
aPosition = _sAlertTools2.default.returnFirstDefined(alert.position, sAlertGlobalConfig.position);
+ preserveContext = _sAlertTools2.default.returnFirstDefined(alert.preserveContext, sAlertGlobalConfig.preserveContext);
positionTypeTop = aPosition && /top/g.test(aPosition);
positionTypeBottom = aPosition && /bottom/g.test(aPosition);
+
if (aStack) {
// checking alert box height - needed to calculate position
docElement = document.createElement('div');
@@ -4822,7 +5008,14 @@ return /******/ (function(modules) { // webpackBootstrap
contentTemplate: aContentTemplate,
customFields: aCustomFields
});
- var reactComponent = _reactDom2.default.render(reactElement, docElement);
+
+ var reactComponent = void 0;
+
+ if (preserveContext) {
+ reactComponent = _reactDom2.default.unstable_renderSubtreeIntoContainer(parentComponent, reactElement, docElement);
+ } else {
+ reactComponent = _reactDom2.default.render(reactElement, docElement);
+ }
document.body.appendChild(docElement);
sAlertBoxHeight = parseInt(getComputedStyle(_reactDom2.default.findDOMNode(reactComponent))['height']);
@@ -4954,9 +5147,9 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(CONST_VAR, 'CONST_VAR', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/Const.js');
+ __REACT_HOT_LOADER__.register(CONST_VAR, 'CONST_VAR', '/home/nogi/nogi/forks/react-bootstrap-table/src/Const.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/Const.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/Const.js');
}();
;
@@ -5041,14 +5234,18 @@ return /******/ (function(modules) { // webpackBootstrap
return _this;
}
+ /* eslint-disable */
+
+
_createClass(TableHeaderColumn, [{
key: '__handleColumnClick__REACT_HOT_LOADER__',
value: function __handleColumnClick__REACT_HOT_LOADER__() {
return this.__handleColumnClick__REACT_HOT_LOADER__.apply(this, arguments);
}
}, {
- key: 'componentWillReceiveProps',
- value: function componentWillReceiveProps(nextProps) {
+ key: 'UNSAFE_componentWillReceiveProps',
+ value: function UNSAFE_componentWillReceiveProps(nextProps) {
+ /* eslint-enable */
if (nextProps.reset) {
this.cleanFiltered();
}
@@ -5428,11 +5625,11 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(TableHeaderColumn, 'TableHeaderColumn', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableHeaderColumn.js');
+ __REACT_HOT_LOADER__.register(TableHeaderColumn, 'TableHeaderColumn', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableHeaderColumn.js');
- __REACT_HOT_LOADER__.register(filterTypeArray, 'filterTypeArray', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableHeaderColumn.js');
+ __REACT_HOT_LOADER__.register(filterTypeArray, 'filterTypeArray', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableHeaderColumn.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableHeaderColumn.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableHeaderColumn.js');
}();
;
@@ -5590,7 +5787,7 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/util.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/util.js');
}();
;
@@ -5818,13 +6015,13 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(legalComparators, 'legalComparators', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/filters/Date.js');
+ __REACT_HOT_LOADER__.register(legalComparators, 'legalComparators', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Date.js');
- __REACT_HOT_LOADER__.register(dateParser, 'dateParser', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/filters/Date.js');
+ __REACT_HOT_LOADER__.register(dateParser, 'dateParser', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Date.js');
- __REACT_HOT_LOADER__.register(DateFilter, 'DateFilter', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/filters/Date.js');
+ __REACT_HOT_LOADER__.register(DateFilter, 'DateFilter', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Date.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/filters/Date.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Date.js');
}();
;
@@ -5918,9 +6115,13 @@ return /******/ (function(modules) { // webpackBootstrap
this.props.filterHandler(defaultValue, _Const2.default.FILTER_TYPE.TEXT);
}
}
+
+ /* eslint-disable */
+
}, {
- key: 'componentWillReceiveProps',
- value: function componentWillReceiveProps(nextProps) {
+ key: 'UNSAFE_componentWillReceiveProps',
+ value: function UNSAFE_componentWillReceiveProps(nextProps) {
+ /* eslint-enable */
if (nextProps.defaultValue !== this.props.defaultValue) {
this.applyFilter(nextProps.defaultValue || '');
}
@@ -5977,9 +6178,9 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(TextFilter, 'TextFilter', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/filters/Text.js');
+ __REACT_HOT_LOADER__.register(TextFilter, 'TextFilter', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Text.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/filters/Text.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Text.js');
}();
;
@@ -6116,9 +6317,9 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(RegexFilter, 'RegexFilter', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/filters/Regex.js');
+ __REACT_HOT_LOADER__.register(RegexFilter, 'RegexFilter', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Regex.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/filters/Regex.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Regex.js');
}();
;
@@ -6184,9 +6385,13 @@ return /******/ (function(modules) { // webpackBootstrap
return _this;
}
+ /* eslint-disable */
+
+
_createClass(SelectFilter, [{
- key: 'componentWillReceiveProps',
- value: function componentWillReceiveProps() {
+ key: 'UNSAFE_componentWillReceiveProps',
+ value: function UNSAFE_componentWillReceiveProps() {
+ /* eslint-enable */
var currentSelectValue = this.selectInput.value;
var isPlaceholderSelected = !currentSelectValue || currentSelectValue === '';
this.setState(function () {
@@ -6318,11 +6523,11 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(optionsEquals, 'optionsEquals', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/filters/Select.js');
+ __REACT_HOT_LOADER__.register(optionsEquals, 'optionsEquals', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Select.js');
- __REACT_HOT_LOADER__.register(SelectFilter, 'SelectFilter', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/filters/Select.js');
+ __REACT_HOT_LOADER__.register(SelectFilter, 'SelectFilter', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Select.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/filters/Select.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Select.js');
}();
;
@@ -6607,11 +6812,11 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(legalComparators, 'legalComparators', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/filters/Number.js');
+ __REACT_HOT_LOADER__.register(legalComparators, 'legalComparators', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Number.js');
- __REACT_HOT_LOADER__.register(NumberFilter, 'NumberFilter', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/filters/Number.js');
+ __REACT_HOT_LOADER__.register(NumberFilter, 'NumberFilter', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Number.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/filters/Number.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Number.js');
}();
;
@@ -6684,11 +6889,15 @@ return /******/ (function(modules) { // webpackBootstrap
value: function componentDidMount() {
this.update(this.props.checked);
}
+ /* eslint-disable */
+
}, {
- key: 'componentWillReceiveProps',
- value: function componentWillReceiveProps(props) {
+ key: 'UNSAFE_componentWillReceiveProps',
+ value: function UNSAFE_componentWillReceiveProps(props) {
this.update(props.checked);
}
+ /* eslint-enable */
+
}, {
key: 'update',
value: function update(checked) {
@@ -6918,13 +7127,13 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(Checkbox, 'Checkbox', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableHeader.js');
+ __REACT_HOT_LOADER__.register(Checkbox, 'Checkbox', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableHeader.js');
- __REACT_HOT_LOADER__.register(getSortOrder, 'getSortOrder', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableHeader.js');
+ __REACT_HOT_LOADER__.register(getSortOrder, 'getSortOrder', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableHeader.js');
- __REACT_HOT_LOADER__.register(TableHeader, 'TableHeader', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableHeader.js');
+ __REACT_HOT_LOADER__.register(TableHeader, 'TableHeader', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableHeader.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableHeader.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableHeader.js');
}();
;
@@ -6994,9 +7203,9 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(SelectRowHeaderColumn, 'SelectRowHeaderColumn', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/SelectRowHeaderColumn.js');
+ __REACT_HOT_LOADER__.register(SelectRowHeaderColumn, 'SelectRowHeaderColumn', '/home/nogi/nogi/forks/react-bootstrap-table/src/SelectRowHeaderColumn.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/SelectRowHeaderColumn.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/SelectRowHeaderColumn.js');
}();
;
@@ -7091,9 +7300,9 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(ExpandRowHeaderColumn, 'ExpandRowHeaderColumn', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/ExpandRowHeaderColumn.js');
+ __REACT_HOT_LOADER__.register(ExpandRowHeaderColumn, 'ExpandRowHeaderColumn', '/home/nogi/nogi/forks/react-bootstrap-table/src/ExpandRowHeaderColumn.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/ExpandRowHeaderColumn.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/ExpandRowHeaderColumn.js');
}();
;
@@ -7245,9 +7454,9 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(TableFooter, 'TableFooter', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableFooter.js');
+ __REACT_HOT_LOADER__.register(TableFooter, 'TableFooter', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableFooter.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableFooter.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableFooter.js');
}();
;
@@ -8052,9 +8261,9 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(TableBody, 'TableBody', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableBody.js');
+ __REACT_HOT_LOADER__.register(TableBody, 'TableBody', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableBody.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableBody.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableBody.js');
}();
;
@@ -8313,9 +8522,9 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(TableRow, 'TableRow', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableRow.js');
+ __REACT_HOT_LOADER__.register(TableRow, 'TableRow', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableRow.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableRow.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableRow.js');
}();
;
@@ -8439,7 +8648,7 @@ return /******/ (function(modules) { // webpackBootstrap
key: 'componentDidMount',
value: function componentDidMount() {
var dom = _reactDom2.default.findDOMNode(this);
- if (this.props.isFocus) {
+ if (this.props.isFocus && this.props.keyBoardNav) {
dom.focus();
} else {
dom.blur();
@@ -8449,7 +8658,7 @@ return /******/ (function(modules) { // webpackBootstrap
key: 'componentDidUpdate',
value: function componentDidUpdate() {
var dom = _reactDom2.default.findDOMNode(this);
- if (this.props.isFocus) {
+ if (this.props.isFocus && this.props.keyBoardNav) {
dom.focus();
} else {
dom.blur();
@@ -8593,9 +8802,9 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(TableColumn, 'TableColumn', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableColumn.js');
+ __REACT_HOT_LOADER__.register(TableColumn, 'TableColumn', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableColumn.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableColumn.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableColumn.js');
}();
;
@@ -9048,9 +9257,9 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(TableEditColumn, 'TableEditColumn', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableEditColumn.js');
+ __REACT_HOT_LOADER__.register(TableEditColumn, 'TableEditColumn', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableEditColumn.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableEditColumn.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableEditColumn.js');
}();
;
@@ -9198,9 +9407,9 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(editor, 'editor', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/Editor.js');
+ __REACT_HOT_LOADER__.register(editor, 'editor', '/home/nogi/nogi/forks/react-bootstrap-table/src/Editor.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/Editor.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/Editor.js');
}();
;
@@ -9243,7 +9452,7 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(notice, 'notice', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/Notification.js');
+ __REACT_HOT_LOADER__.register(notice, 'notice', '/home/nogi/nogi/forks/react-bootstrap-table/src/Notification.js');
}();
;
@@ -9324,9 +9533,9 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(ExpandComponent, 'ExpandComponent', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/ExpandComponent.js');
+ __REACT_HOT_LOADER__.register(ExpandComponent, 'ExpandComponent', '/home/nogi/nogi/forks/react-bootstrap-table/src/ExpandComponent.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/ExpandComponent.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/ExpandComponent.js');
}();
;
@@ -9411,6 +9620,9 @@ return /******/ (function(modules) { // webpackBootstrap
return _this;
}
+ /* eslint-disable */
+
+
_createClass(PaginationList, [{
key: '__closeDropDown__REACT_HOT_LOADER__',
value: function __closeDropDown__REACT_HOT_LOADER__() {
@@ -9432,8 +9644,9 @@ return /******/ (function(modules) { // webpackBootstrap
return this.__changePage__REACT_HOT_LOADER__.apply(this, arguments);
}
}, {
- key: 'componentWillReceiveProps',
- value: function componentWillReceiveProps() {
+ key: 'UNSAFE_componentWillReceiveProps',
+ value: function UNSAFE_componentWillReceiveProps() {
+ /* eslint-enable */
var keepSizePerPageState = this.props.keepSizePerPageState;
if (!keepSizePerPageState) {
@@ -9814,9 +10027,9 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(PaginationList, 'PaginationList', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/pagination/PaginationList.js');
+ __REACT_HOT_LOADER__.register(PaginationList, 'PaginationList', '/home/nogi/nogi/forks/react-bootstrap-table/src/pagination/PaginationList.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/pagination/PaginationList.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/pagination/PaginationList.js');
}();
;
@@ -9922,9 +10135,9 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(PageButton, 'PageButton', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/pagination/PageButton.js');
+ __REACT_HOT_LOADER__.register(PageButton, 'PageButton', '/home/nogi/nogi/forks/react-bootstrap-table/src/pagination/PageButton.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/pagination/PageButton.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/pagination/PageButton.js');
}();
;
@@ -10055,11 +10268,11 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(sizePerPageDefaultClass, 'sizePerPageDefaultClass', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/pagination/SizePerPageDropDown.js');
+ __REACT_HOT_LOADER__.register(sizePerPageDefaultClass, 'sizePerPageDefaultClass', '/home/nogi/nogi/forks/react-bootstrap-table/src/pagination/SizePerPageDropDown.js');
- __REACT_HOT_LOADER__.register(SizePerPageDropDown, 'SizePerPageDropDown', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/pagination/SizePerPageDropDown.js');
+ __REACT_HOT_LOADER__.register(SizePerPageDropDown, 'SizePerPageDropDown', '/home/nogi/nogi/forks/react-bootstrap-table/src/pagination/SizePerPageDropDown.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/pagination/SizePerPageDropDown.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/pagination/SizePerPageDropDown.js');
}();
;
@@ -10098,31 +10311,31 @@ return /******/ (function(modules) { // webpackBootstrap
var _Notification = __webpack_require__(39);
- var _InsertModal = __webpack_require__(57);
+ var _InsertModal = __webpack_require__(59);
var _InsertModal2 = _interopRequireDefault(_InsertModal);
- var _InsertButton = __webpack_require__(61);
+ var _InsertButton = __webpack_require__(63);
var _InsertButton2 = _interopRequireDefault(_InsertButton);
- var _DeleteButton = __webpack_require__(62);
+ var _DeleteButton = __webpack_require__(64);
var _DeleteButton2 = _interopRequireDefault(_DeleteButton);
- var _ExportCSVButton = __webpack_require__(63);
+ var _ExportCSVButton = __webpack_require__(65);
var _ExportCSVButton2 = _interopRequireDefault(_ExportCSVButton);
- var _ShowSelectedOnlyButton = __webpack_require__(64);
+ var _ShowSelectedOnlyButton = __webpack_require__(66);
var _ShowSelectedOnlyButton2 = _interopRequireDefault(_ShowSelectedOnlyButton);
- var _SearchField = __webpack_require__(65);
+ var _SearchField = __webpack_require__(67);
var _SearchField2 = _interopRequireDefault(_SearchField);
- var _ClearSearchButton = __webpack_require__(66);
+ var _ClearSearchButton = __webpack_require__(68);
var _ClearSearchButton2 = _interopRequireDefault(_ClearSearchButton);
@@ -10202,6 +10415,9 @@ return /******/ (function(modules) { // webpackBootstrap
return _this;
}
+ /* eslint-disable */
+
+
_createClass(ToolBar, [{
key: '__handleClearBtnClick__REACT_HOT_LOADER__',
value: function __handleClearBtnClick__REACT_HOT_LOADER__() {
@@ -10281,18 +10497,23 @@ return /******/ (function(modules) { // webpackBootstrap
return this.__displayCommonMessage__REACT_HOT_LOADER__.apply(this, arguments);
}
}, {
- key: 'componentWillMount',
- value: function componentWillMount() {
+ key: 'UNSAFE_componentWillMount',
+ value: function UNSAFE_componentWillMount() {
var _this3 = this;
+ /* eslint-enable */
var delay = this.props.searchDelayTime ? this.props.searchDelayTime : 0;
this.debounceCallback = this.handleDebounce(function () {
_this3.seachInput && _this3.props.onSearch(_this3.seachInput.getValue());
}, delay);
}
+
+ /* eslint-disable */
+
}, {
- key: 'componentWillReceiveProps',
- value: function componentWillReceiveProps(nextProps) {
+ key: 'UNSAFE_componentWillReceiveProps',
+ value: function UNSAFE_componentWillReceiveProps(nextProps) {
+ /* eslint-enable */
if (nextProps.reset) {
this.setSearchInput('');
}
@@ -10781,9 +11002,9 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(ToolBar, 'ToolBar', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/ToolBar.js');
+ __REACT_HOT_LOADER__.register(ToolBar, 'ToolBar', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ToolBar.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/ToolBar.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ToolBar.js');
}();
;
@@ -10842,10 +11063,12 @@ return /******/ (function(modules) { // webpackBootstrap
var ariaAppHider = _interopRequireWildcard(_ariaAppHider);
- var _safeHTMLElement = __webpack_require__(55);
+ var _safeHTMLElement = __webpack_require__(53);
var _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);
+ var _reactLifecyclesCompat = __webpack_require__(58);
+
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -10860,7 +11083,10 @@ return /******/ (function(modules) { // webpackBootstrap
var bodyOpenClassName = exports.bodyOpenClassName = "ReactModal__Body--open";
var isReact16 = _reactDom2.default.createPortal !== undefined;
- var createPortal = isReact16 ? _reactDom2.default.createPortal : _reactDom2.default.unstable_renderSubtreeIntoContainer;
+
+ var getCreatePortal = function getCreatePortal() {
+ return isReact16 ? _reactDom2.default.createPortal : _reactDom2.default.unstable_renderSubtreeIntoContainer;
+ };
function getParentElement(parentSelector) {
return parentSelector();
@@ -10883,10 +11109,16 @@ return /******/ (function(modules) { // webpackBootstrap
return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Modal.__proto__ || Object.getPrototypeOf(Modal)).call.apply(_ref, [this].concat(args))), _this), _this.removePortal = function () {
!isReact16 && _reactDom2.default.unmountComponentAtNode(_this.node);
var parent = getParentElement(_this.props.parentSelector);
- parent.removeChild(_this.node);
+ if (parent) {
+ parent.removeChild(_this.node);
+ } else {
+ // eslint-disable-next-line no-console
+ console.warn('React-Modal: "parentSelector" prop did not returned any DOM ' + "element. Make sure that the parent element is unmounted to " + "avoid any memory leaks.");
+ }
}, _this.portalRef = function (ref) {
_this.portal = ref;
}, _this.renderPortal = function (props) {
+ var createPortal = getCreatePortal();
var portal = createPortal(_this, _react2.default.createElement(_ModalPortal2.default, _extends({ defaultStyles: Modal.defaultStyles }, props)), _this.node);
_this.portalRef(portal);
}, _temp), _possibleConstructorReturn(_this, _ret);
@@ -10908,31 +11140,37 @@ return /******/ (function(modules) { // webpackBootstrap
!isReact16 && this.renderPortal(this.props);
}
}, {
- key: "componentWillReceiveProps",
- value: function componentWillReceiveProps(newProps) {
+ key: "getSnapshotBeforeUpdate",
+ value: function getSnapshotBeforeUpdate(prevProps) {
+ var prevParent = getParentElement(prevProps.parentSelector);
+ var nextParent = getParentElement(this.props.parentSelector);
+ return { prevParent: prevParent, nextParent: nextParent };
+ }
+ }, {
+ key: "componentDidUpdate",
+ value: function componentDidUpdate(prevProps, _, snapshot) {
if (!_safeHTMLElement.canUseDOM) return;
- var isOpen = newProps.isOpen;
- // Stop unnecessary renders if modal is remaining closed
-
- if (!this.props.isOpen && !isOpen) return;
+ var _props = this.props,
+ isOpen = _props.isOpen,
+ portalClassName = _props.portalClassName;
- var currentParent = getParentElement(this.props.parentSelector);
- var newParent = getParentElement(newProps.parentSelector);
- if (newParent !== currentParent) {
- currentParent.removeChild(this.node);
- newParent.appendChild(this.node);
+ if (prevProps.portalClassName !== portalClassName) {
+ this.node.className = portalClassName;
}
- !isReact16 && this.renderPortal(newProps);
- }
- }, {
- key: "componentWillUpdate",
- value: function componentWillUpdate(newProps) {
- if (!_safeHTMLElement.canUseDOM) return;
- if (newProps.portalClassName !== this.props.portalClassName) {
- this.node.className = newProps.portalClassName;
+ var prevParent = snapshot.prevParent,
+ nextParent = snapshot.nextParent;
+
+ if (nextParent !== prevParent) {
+ prevParent.removeChild(this.node);
+ nextParent.appendChild(this.node);
}
+
+ // Stop unnecessary renders if modal is remaining closed
+ if (!prevProps.isOpen && !isOpen) return;
+
+ !isReact16 && this.renderPortal(this.props);
}
}, {
key: "componentWillUnmount",
@@ -10964,6 +11202,7 @@ return /******/ (function(modules) { // webpackBootstrap
this.node = document.createElement("div");
}
+ var createPortal = getCreatePortal();
return createPortal(_react2.default.createElement(_ModalPortal2.default, _extends({
ref: this.portalRef,
defaultStyles: Modal.defaultStyles
@@ -10992,6 +11231,7 @@ return /******/ (function(modules) { // webpackBootstrap
}),
portalClassName: _propTypes2.default.string,
bodyOpenClassName: _propTypes2.default.string,
+ htmlOpenClassName: _propTypes2.default.string,
className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({
base: _propTypes2.default.string.isRequired,
afterOpen: _propTypes2.default.string.isRequired,
@@ -11012,14 +11252,18 @@ return /******/ (function(modules) { // webpackBootstrap
shouldReturnFocusAfterClose: _propTypes2.default.bool,
parentSelector: _propTypes2.default.func,
aria: _propTypes2.default.object,
+ data: _propTypes2.default.object,
role: _propTypes2.default.string,
contentLabel: _propTypes2.default.string,
- shouldCloseOnEsc: _propTypes2.default.bool
+ shouldCloseOnEsc: _propTypes2.default.bool,
+ overlayRef: _propTypes2.default.func,
+ contentRef: _propTypes2.default.func
};
Modal.defaultProps = {
isOpen: false,
portalClassName: portalClassName,
bodyOpenClassName: bodyOpenClassName,
+ role: "dialog",
ariaHideApp: true,
closeTimeoutMS: 0,
shouldFocusAfterRender: true,
@@ -11054,6 +11298,10 @@ return /******/ (function(modules) { // webpackBootstrap
padding: "20px"
}
};
+
+
+ (0, _reactLifecyclesCompat.polyfill)(Modal);
+
exports.default = Modal;
/***/ }),
@@ -11092,17 +11340,19 @@ return /******/ (function(modules) { // webpackBootstrap
var ariaAppHider = _interopRequireWildcard(_ariaAppHider);
- var _refCount = __webpack_require__(53);
+ var _classList = __webpack_require__(55);
- var refCount = _interopRequireWildcard(_refCount);
+ var classList = _interopRequireWildcard(_classList);
- var _bodyClassList = __webpack_require__(54);
+ var _safeHTMLElement = __webpack_require__(53);
- var bodyClassList = _interopRequireWildcard(_bodyClassList);
+ var _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);
- var _safeHTMLElement = __webpack_require__(55);
+ var _portalOpenInstances = __webpack_require__(56);
- var _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);
+ var _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);
+
+ __webpack_require__(57);
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
@@ -11123,6 +11373,8 @@ return /******/ (function(modules) { // webpackBootstrap
var TAB_KEY = 9;
var ESC_KEY = 27;
+ var ariaHiddenInstances = 0;
+
var ModalPortal = function (_Component) {
_inherits(ModalPortal, _Component);
@@ -11131,30 +11383,36 @@ return /******/ (function(modules) { // webpackBootstrap
var _this = _possibleConstructorReturn(this, (ModalPortal.__proto__ || Object.getPrototypeOf(ModalPortal)).call(this, props));
- _this.setFocusAfterRender = function (focus) {
- _this.focusAfterRender = _this.props.shouldFocusAfterRender && focus;
- };
-
_this.setOverlayRef = function (overlay) {
_this.overlay = overlay;
+ _this.props.overlayRef && _this.props.overlayRef(overlay);
};
_this.setContentRef = function (content) {
_this.content = content;
+ _this.props.contentRef && _this.props.contentRef(content);
};
_this.afterClose = function () {
var _this$props = _this.props,
appElement = _this$props.appElement,
- ariaHideApp = _this$props.ariaHideApp;
+ ariaHideApp = _this$props.ariaHideApp,
+ htmlOpenClassName = _this$props.htmlOpenClassName,
+ bodyOpenClassName = _this$props.bodyOpenClassName;
+
+ // Remove classes.
- // Remove body class
+ bodyOpenClassName && classList.remove(document.body, bodyOpenClassName);
- bodyClassList.remove(_this.props.bodyOpenClassName);
+ htmlOpenClassName && classList.remove(document.getElementsByTagName("html")[0], htmlOpenClassName);
// Reset aria-hidden attribute if all modals have been removed
- if (ariaHideApp && refCount.totalCount() < 1) {
- ariaAppHider.show(appElement);
+ if (ariaHideApp && ariaHiddenInstances > 0) {
+ ariaHiddenInstances -= 1;
+
+ if (ariaHiddenInstances === 0) {
+ ariaAppHider.show(appElement);
+ }
}
if (_this.props.shouldFocusAfterRender) {
@@ -11165,6 +11423,12 @@ return /******/ (function(modules) { // webpackBootstrap
focusManager.popWithoutFocus();
}
}
+
+ if (_this.props.onAfterClose) {
+ _this.props.onAfterClose();
+ }
+
+ _portalOpenInstances2.default.deregister(_this);
};
_this.open = function () {
@@ -11182,7 +11446,10 @@ return /******/ (function(modules) { // webpackBootstrap
_this.setState({ afterOpen: true });
if (_this.props.isOpen && _this.props.onAfterOpen) {
- _this.props.onAfterOpen();
+ _this.props.onAfterOpen({
+ overlayEl: _this.overlay,
+ contentEl: _this.content
+ });
}
});
}
@@ -11222,7 +11489,7 @@ return /******/ (function(modules) { // webpackBootstrap
}
if (_this.props.shouldCloseOnEsc && event.keyCode === ESC_KEY) {
- event.preventDefault();
+ event.stopPropagation();
_this.requestClose(event);
}
};
@@ -11240,13 +11507,6 @@ return /******/ (function(modules) { // webpackBootstrap
}
}
_this.shouldClose = null;
- _this.moveFromContentToOverlay = null;
- };
-
- _this.handleOverlayOnMouseUp = function () {
- if (_this.moveFromContentToOverlay === null) {
- _this.shouldClose = false;
- }
};
_this.handleContentOnMouseUp = function () {
@@ -11257,7 +11517,6 @@ return /******/ (function(modules) { // webpackBootstrap
if (!_this.props.shouldCloseOnOverlayClick && event.target == _this.overlay) {
event.preventDefault();
}
- _this.moveFromContentToOverlay = false;
};
_this.handleContentOnClick = function () {
@@ -11266,7 +11525,6 @@ return /******/ (function(modules) { // webpackBootstrap
_this.handleContentOnMouseDown = function () {
_this.shouldClose = false;
- _this.moveFromContentToOverlay = false;
};
_this.requestClose = function (event) {
@@ -11301,9 +11559,9 @@ return /******/ (function(modules) { // webpackBootstrap
return typeof additional === "string" && additional ? className + " " + additional : className;
};
- _this.ariaAttributes = function (items) {
+ _this.attributesFromObject = function (prefix, items) {
return Object.keys(items).reduce(function (acc, name) {
- acc["aria-" + name] = items[name];
+ acc[prefix + "-" + name] = items[name];
return acc;
}, {});
};
@@ -11321,41 +11579,41 @@ return /******/ (function(modules) { // webpackBootstrap
_createClass(ModalPortal, [{
key: "componentDidMount",
value: function componentDidMount() {
- // Focus needs to be set when mounting and already open
if (this.props.isOpen) {
- this.setFocusAfterRender(true);
this.open();
}
}
}, {
- key: "componentWillReceiveProps",
- value: function componentWillReceiveProps(newProps) {
+ key: "componentDidUpdate",
+ value: function componentDidUpdate(prevProps, prevState) {
if (process.env.NODE_ENV !== "production") {
- if (newProps.bodyOpenClassName !== this.props.bodyOpenClassName) {
+ if (prevProps.bodyOpenClassName !== this.props.bodyOpenClassName) {
// eslint-disable-next-line no-console
console.warn('React-Modal: "bodyOpenClassName" prop has been modified. ' + "This may cause unexpected behavior when multiple modals are open.");
}
+ if (prevProps.htmlOpenClassName !== this.props.htmlOpenClassName) {
+ // eslint-disable-next-line no-console
+ console.warn('React-Modal: "htmlOpenClassName" prop has been modified. ' + "This may cause unexpected behavior when multiple modals are open.");
+ }
}
- // Focus only needs to be set once when the modal is being opened
- if (!this.props.isOpen && newProps.isOpen) {
- this.setFocusAfterRender(true);
+
+ if (this.props.isOpen && !prevProps.isOpen) {
this.open();
- } else if (this.props.isOpen && !newProps.isOpen) {
+ } else if (!this.props.isOpen && prevProps.isOpen) {
this.close();
}
- }
- }, {
- key: "componentDidUpdate",
- value: function componentDidUpdate() {
- if (this.focusAfterRender) {
+
+ // Focus only needs to be set once when the modal is being opened
+ if (this.props.shouldFocusAfterRender && this.state.isOpen && !prevState.isOpen) {
this.focusContent();
- this.setFocusAfterRender(false);
}
}
}, {
key: "componentWillUnmount",
value: function componentWillUnmount() {
- this.afterClose();
+ if (this.state.isOpen) {
+ this.afterClose();
+ }
clearTimeout(this.closeTimer);
}
}, {
@@ -11364,14 +11622,21 @@ return /******/ (function(modules) { // webpackBootstrap
var _props = this.props,
appElement = _props.appElement,
ariaHideApp = _props.ariaHideApp,
+ htmlOpenClassName = _props.htmlOpenClassName,
bodyOpenClassName = _props.bodyOpenClassName;
- // Add body class
- bodyClassList.add(bodyOpenClassName);
- // Add aria-hidden to appElement
+ // Add classes.
+
+ bodyOpenClassName && classList.add(document.body, bodyOpenClassName);
+
+ htmlOpenClassName && classList.add(document.getElementsByTagName("html")[0], htmlOpenClassName);
+
if (ariaHideApp) {
+ ariaHiddenInstances += 1;
ariaAppHider.hide(appElement);
}
+
+ _portalOpenInstances2.default.register(this);
}
// Don't steal focus from inner elements
@@ -11380,6 +11645,7 @@ return /******/ (function(modules) { // webpackBootstrap
key: "render",
value: function render() {
var _props2 = this.props,
+ id = _props2.id,
className = _props2.className,
overlayClassName = _props2.overlayClassName,
defaultStyles = _props2.defaultStyles;
@@ -11394,13 +11660,12 @@ return /******/ (function(modules) { // webpackBootstrap
className: this.buildClassName("overlay", overlayClassName),
style: _extends({}, overlayStyles, this.props.style.overlay),
onClick: this.handleOverlayOnClick,
- onMouseDown: this.handleOverlayOnMouseDown,
- onMouseUp: this.handleOverlayOnMouseUp,
- "aria-modal": "true"
+ onMouseDown: this.handleOverlayOnMouseDown
},
_react2.default.createElement(
"div",
_extends({
+ id: id,
ref: this.setContentRef,
style: _extends({}, contentStyles, this.props.style.content),
className: this.buildClassName("content", className),
@@ -11411,7 +11676,9 @@ return /******/ (function(modules) { // webpackBootstrap
onClick: this.handleContentOnClick,
role: this.props.role,
"aria-label": this.props.contentLabel
- }, this.ariaAttributes(this.props.aria || {})),
+ }, this.attributesFromObject("aria", this.props.aria || {}), this.attributesFromObject("data", this.props.data || {}), {
+ "data-testid": this.props.testId
+ }),
this.props.children
)
);
@@ -11425,7 +11692,8 @@ return /******/ (function(modules) { // webpackBootstrap
style: {
overlay: {},
content: {}
- }
+ },
+ defaultStyles: {}
};
ModalPortal.propTypes = {
isOpen: _propTypes2.default.bool.isRequired,
@@ -11440,9 +11708,11 @@ return /******/ (function(modules) { // webpackBootstrap
className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),
overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),
bodyOpenClassName: _propTypes2.default.string,
+ htmlOpenClassName: _propTypes2.default.string,
ariaHideApp: _propTypes2.default.bool,
appElement: _propTypes2.default.instanceOf(_safeHTMLElement2.default),
onAfterOpen: _propTypes2.default.func,
+ onAfterClose: _propTypes2.default.func,
onRequestClose: _propTypes2.default.func,
closeTimeoutMS: _propTypes2.default.number,
shouldFocusAfterRender: _propTypes2.default.bool,
@@ -11451,8 +11721,13 @@ return /******/ (function(modules) { // webpackBootstrap
role: _propTypes2.default.string,
contentLabel: _propTypes2.default.string,
aria: _propTypes2.default.object,
+ data: _propTypes2.default.object,
children: _propTypes2.default.node,
- shouldCloseOnEsc: _propTypes2.default.bool
+ shouldCloseOnEsc: _propTypes2.default.bool,
+ overlayRef: _propTypes2.default.func,
+ contentRef: _propTypes2.default.func,
+ id: _propTypes2.default.string,
+ testId: _propTypes2.default.string
};
exports.default = ModalPortal;
module.exports = exports["default"];
@@ -11518,8 +11793,10 @@ return /******/ (function(modules) { // webpackBootstrap
function returnFocus() {
var toFocus = null;
try {
- toFocus = focusLaterElements.pop();
- toFocus.focus();
+ if (focusLaterElements.length !== 0) {
+ toFocus = focusLaterElements.pop();
+ toFocus.focus();
+ }
return;
} catch (e) {
console.warn(["You tried to return focus to", toFocus, "but it is not in the DOM anymore"].join(" "));
@@ -11587,7 +11864,9 @@ return /******/ (function(modules) { // webpackBootstrap
// Otherwise we need to check some styles
var style = window.getComputedStyle(element);
- return zeroSize ? style.getPropertyValue("overflow") !== "visible" : style.getPropertyValue("display") == "none";
+ return zeroSize ? style.getPropertyValue("overflow") !== "visible" ||
+ // if 'overflow: visible' set, check if there is actually any overflow
+ element.scrollWidth <= 0 && element.scrollHeight <= 0 : style.getPropertyValue("display") == "none";
}
function visible(element) {
@@ -11644,16 +11923,19 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
+ var target = void 0;
+
var shiftKey = event.shiftKey;
var head = tabbable[0];
var tail = tabbable[tabbable.length - 1];
- // proceed with default browser behavior
+ // proceed with default browser behavior on tab.
+ // Focus on last element on shift + tab.
if (node === document.activeElement) {
- return;
+ if (!shiftKey) return;
+ target = tail;
}
- var target;
if (tail === document.activeElement && !shiftKey) {
target = head;
}
@@ -11673,7 +11955,7 @@ return /******/ (function(modules) { // webpackBootstrap
// Safari does not move the focus to the radio button,
// so we need to force it to really walk through all elements.
//
- // This is very error prune, since we are trying to guess
+ // This is very error prone, since we are trying to guess
// if it is a safari browser from the first occurence between
// chrome or safari.
//
@@ -11692,9 +11974,20 @@ return /******/ (function(modules) { // webpackBootstrap
x += shiftKey ? -1 : 1;
}
+ target = tabbable[x];
+
+ // If the tabbable element does not exist,
+ // focus head/tail based on shiftKey
+ if (typeof target === "undefined") {
+ event.preventDefault();
+ target = shiftKey ? tail : head;
+ target.focus();
+ return;
+ }
+
event.preventDefault();
- tabbable[x].focus();
+ target.focus();
}
module.exports = exports["default"];
@@ -11719,6 +12012,8 @@ return /******/ (function(modules) { // webpackBootstrap
var _warning2 = _interopRequireDefault(_warning);
+ var _safeHTMLElement = __webpack_require__(53);
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var globalElement = null;
@@ -11731,7 +12026,7 @@ return /******/ (function(modules) { // webpackBootstrap
function setElement(element) {
var useElement = element;
- if (typeof useElement === "string") {
+ if (typeof useElement === "string" && _safeHTMLElement.canUseDOM) {
var el = document.querySelectorAll(useElement);
assertNodeList(el, useElement);
useElement = "length" in el ? el[0] : el;
@@ -11775,12 +12070,10 @@ return /******/ (function(modules) { // webpackBootstrap
/***/ (function(module, exports, __webpack_require__) {
/* WEBPACK VAR INJECTION */(function(process) {/**
- * Copyright 2014-2015, Facebook, Inc.
- * All rights reserved.
+ * Copyright (c) 2014-present, Facebook, Inc.
*
- * 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';
@@ -11792,9 +12085,33 @@ return /******/ (function(modules) { // webpackBootstrap
* same logic and follow the same code paths.
*/
+ var __DEV__ = process.env.NODE_ENV !== 'production';
+
var warning = function() {};
- if (process.env.NODE_ENV !== 'production') {
+ if (__DEV__) {
+ var printWarning = function printWarning(format, args) {
+ var len = arguments.length;
+ args = new Array(len > 1 ? len - 1 : 0);
+ for (var key = 1; key < len; key++) {
+ args[key - 1] = arguments[key];
+ }
+ var argIndex = 0;
+ var message = 'Warning: ' +
+ format.replace(/%s/g, function() {
+ return args[argIndex++];
+ });
+ if (typeof console !== 'undefined') {
+ console.error(message);
+ }
+ try {
+ // --- Welcome to debugging React ---
+ // This error was thrown as a convenience so that you can use this stack
+ // to find the callsite that caused this warning to fire.
+ throw new Error(message);
+ } catch (x) {}
+ }
+
warning = function(condition, format, args) {
var len = arguments.length;
args = new Array(len > 2 ? len - 2 : 0);
@@ -11803,32 +12120,12 @@ return /******/ (function(modules) { // webpackBootstrap
}
if (format === undefined) {
throw new Error(
- '`warning(condition, format, ...args)` requires a warning ' +
- 'message argument'
- );
- }
-
- if (format.length < 10 || (/^[s\W]*$/).test(format)) {
- throw new Error(
- 'The warning format should be able to uniquely identify this ' +
- 'warning. Please, use a more descriptive format than: ' + format
+ '`warning(condition, format, ...args)` requires a warning ' +
+ 'message argument'
);
}
-
if (!condition) {
- var argIndex = 0;
- var message = 'Warning: ' +
- format.replace(/%s/g, function() {
- return args[argIndex++];
- });
- if (typeof console !== 'undefined') {
- console.error(message);
- }
- try {
- // This error was thrown as a convenience so that you can use this stack
- // to find the callsite that caused this warning to fire.
- throw new Error(message);
- } catch(x) {}
+ printWarning.apply(null, [format].concat(args));
}
};
}
@@ -11839,83 +12136,6 @@ return /******/ (function(modules) { // webpackBootstrap
/***/ }),
/* 53 */
-/***/ (function(module, exports) {
-
- "use strict";
-
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.get = get;
- exports.add = add;
- exports.remove = remove;
- exports.totalCount = totalCount;
- var classListMap = {};
-
- function get() {
- return classListMap;
- }
-
- function add(bodyClass) {
- // Set variable and default if none
- if (!classListMap[bodyClass]) {
- classListMap[bodyClass] = 0;
- }
- classListMap[bodyClass] += 1;
- return bodyClass;
- }
-
- function remove(bodyClass) {
- if (classListMap[bodyClass]) {
- classListMap[bodyClass] -= 1;
- }
- return bodyClass;
- }
-
- function totalCount() {
- return Object.keys(classListMap).reduce(function (acc, curr) {
- return acc + classListMap[curr];
- }, 0);
- }
-
-/***/ }),
-/* 54 */
-/***/ (function(module, exports, __webpack_require__) {
-
- "use strict";
-
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.add = add;
- exports.remove = remove;
-
- var _refCount = __webpack_require__(53);
-
- var refCount = _interopRequireWildcard(_refCount);
-
- function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
-
- function add(bodyClass) {
- // Increment class(es) on refCount tracker and add class(es) to body
- bodyClass.split(" ").map(refCount.add).forEach(function (className) {
- return document.body.classList.add(className);
- });
- }
-
- function remove(bodyClass) {
- var classListMap = refCount.get();
- // Decrement class(es) from the refCount tracker
- // and remove unused class(es) from body
- bodyClass.split(" ").map(refCount.remove).filter(function (className) {
- return classListMap[className] === 0;
- }).forEach(function (className) {
- return document.body.classList.remove(className);
- });
- }
-
-/***/ }),
-/* 55 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@@ -11925,7 +12145,7 @@ return /******/ (function(modules) { // webpackBootstrap
});
exports.canUseDOM = undefined;
- var _exenv = __webpack_require__(56);
+ var _exenv = __webpack_require__(54);
var _exenv2 = _interopRequireDefault(_exenv);
@@ -11940,7 +12160,7 @@ return /******/ (function(modules) { // webpackBootstrap
exports.default = SafeHTMLElement;
/***/ }),
-/* 56 */
+/* 54 */
/***/ (function(module, exports, __webpack_require__) {
var __WEBPACK_AMD_DEFINE_RESULT__;/*!
@@ -11985,8 +12205,420 @@ return /******/ (function(modules) { // webpackBootstrap
}());
+/***/ }),
+/* 55 */
+/***/ (function(module, exports, __webpack_require__) {
+
+ /* WEBPACK VAR INJECTION */(function(process) {"use strict";
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+ exports.dumpClassLists = dumpClassLists;
+ var htmlClassList = {};
+ var docBodyClassList = {};
+
+ function dumpClassLists() {
+ if (process.env.NODE_ENV !== "production") {
+ var classes = document.getElementsByTagName("html")[0].className;
+ var buffer = "Show tracked classes:\n\n";
+
+ buffer += "
(" + classes + "):\n";
+ for (var x in htmlClassList) {
+ buffer += " " + x + " " + htmlClassList[x] + "\n";
+ }
+
+ classes = document.body.className;
+
+ // eslint-disable-next-line max-len
+ buffer += "\n\ndoc.body (" + classes + "):\n";
+ for (var _x in docBodyClassList) {
+ buffer += " " + _x + " " + docBodyClassList[_x] + "\n";
+ }
+
+ buffer += "\n";
+
+ // eslint-disable-next-line no-console
+ console.log(buffer);
+ }
+ }
+
+ /**
+ * Track the number of reference of a class.
+ * @param {object} poll The poll to receive the reference.
+ * @param {string} className The class name.
+ * @return {string}
+ */
+ var incrementReference = function incrementReference(poll, className) {
+ if (!poll[className]) {
+ poll[className] = 0;
+ }
+ poll[className] += 1;
+ return className;
+ };
+
+ /**
+ * Drop the reference of a class.
+ * @param {object} poll The poll to receive the reference.
+ * @param {string} className The class name.
+ * @return {string}
+ */
+ var decrementReference = function decrementReference(poll, className) {
+ if (poll[className]) {
+ poll[className] -= 1;
+ }
+ return className;
+ };
+
+ /**
+ * Track a class and add to the given class list.
+ * @param {Object} classListRef A class list of an element.
+ * @param {Object} poll The poll to be used.
+ * @param {Array} classes The list of classes to be tracked.
+ */
+ var trackClass = function trackClass(classListRef, poll, classes) {
+ classes.forEach(function (className) {
+ incrementReference(poll, className);
+ classListRef.add(className);
+ });
+ };
+
+ /**
+ * Untrack a class and remove from the given class list if the reference
+ * reaches 0.
+ * @param {Object} classListRef A class list of an element.
+ * @param {Object} poll The poll to be used.
+ * @param {Array} classes The list of classes to be untracked.
+ */
+ var untrackClass = function untrackClass(classListRef, poll, classes) {
+ classes.forEach(function (className) {
+ decrementReference(poll, className);
+ poll[className] === 0 && classListRef.remove(className);
+ });
+ };
+
+ /**
+ * Public inferface to add classes to the document.body.
+ * @param {string} bodyClass The class string to be added.
+ * It may contain more then one class
+ * with ' ' as separator.
+ */
+ var add = exports.add = function add(element, classString) {
+ return trackClass(element.classList, element.nodeName.toLowerCase() == "html" ? htmlClassList : docBodyClassList, classString.split(" "));
+ };
+
+ /**
+ * Public inferface to remove classes from the document.body.
+ * @param {string} bodyClass The class string to be added.
+ * It may contain more then one class
+ * with ' ' as separator.
+ */
+ var remove = exports.remove = function remove(element, classString) {
+ return untrackClass(element.classList, element.nodeName.toLowerCase() == "html" ? htmlClassList : docBodyClassList, classString.split(" "));
+ };
+ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(4)))
+
+/***/ }),
+/* 56 */
+/***/ (function(module, exports, __webpack_require__) {
+
+ /* WEBPACK VAR INJECTION */(function(process) {"use strict";
+
+ Object.defineProperty(exports, "__esModule", {
+ value: true
+ });
+
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+ // Tracks portals that are open and emits events to subscribers
+
+ var PortalOpenInstances = function PortalOpenInstances() {
+ var _this = this;
+
+ _classCallCheck(this, PortalOpenInstances);
+
+ this.register = function (openInstance) {
+ if (_this.openInstances.indexOf(openInstance) !== -1) {
+ if (process.env.NODE_ENV !== "production") {
+ // eslint-disable-next-line no-console
+ console.warn("React-Modal: Cannot register modal instance that's already open");
+ }
+ return;
+ }
+ _this.openInstances.push(openInstance);
+ _this.emit("register");
+ };
+
+ this.deregister = function (openInstance) {
+ var index = _this.openInstances.indexOf(openInstance);
+ if (index === -1) {
+ if (process.env.NODE_ENV !== "production") {
+ // eslint-disable-next-line no-console
+ console.warn("React-Modal: Unable to deregister " + openInstance + " as " + "it was never registered");
+ }
+ return;
+ }
+ _this.openInstances.splice(index, 1);
+ _this.emit("deregister");
+ };
+
+ this.subscribe = function (callback) {
+ _this.subscribers.push(callback);
+ };
+
+ this.emit = function (eventType) {
+ _this.subscribers.forEach(function (subscriber) {
+ return subscriber(eventType,
+ // shallow copy to avoid accidental mutation
+ _this.openInstances.slice());
+ });
+ };
+
+ this.openInstances = [];
+ this.subscribers = [];
+ };
+
+ var portalOpenInstances = new PortalOpenInstances();
+
+ exports.default = portalOpenInstances;
+ module.exports = exports["default"];
+ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(4)))
+
/***/ }),
/* 57 */
+/***/ (function(module, exports, __webpack_require__) {
+
+ /* WEBPACK VAR INJECTION */(function(process) {"use strict";
+
+ var _portalOpenInstances = __webpack_require__(56);
+
+ var _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);
+
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+ // Body focus trap see Issue #742
+
+ var before = void 0,
+ after = void 0,
+ instances = [];
+
+ function focusContent() {
+ if (instances.length === 0) {
+ if (process.env.NODE_ENV !== "production") {
+ // eslint-disable-next-line no-console
+ console.warn("React-Modal: Open instances > 0 expected");
+ }
+ return;
+ }
+ instances[instances.length - 1].focusContent();
+ }
+
+ function bodyTrap(eventType, openInstances) {
+ if (!before || !after) {
+ before = document.createElement("div");
+ before.setAttribute("data-react-modal-body-trap", "");
+ before.style.position = "absolute";
+ before.style.opacity = "0";
+ before.setAttribute("tabindex", "0");
+ before.addEventListener("focus", focusContent);
+ after = before.cloneNode();
+ after.addEventListener("focus", focusContent);
+ }
+
+ instances = openInstances;
+
+ if (instances.length > 0) {
+ // Add focus trap
+ if (document.body.firstChild !== before) {
+ document.body.insertBefore(before, document.body.firstChild);
+ }
+ if (document.body.lastChild !== after) {
+ document.body.appendChild(after);
+ }
+ } else {
+ // Remove focus trap
+ if (before.parentElement) {
+ before.parentElement.removeChild(before);
+ }
+ if (after.parentElement) {
+ after.parentElement.removeChild(after);
+ }
+ }
+ }
+
+ _portalOpenInstances2.default.subscribe(bodyTrap);
+ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(4)))
+
+/***/ }),
+/* 58 */
+/***/ (function(module, exports) {
+
+ 'use strict';
+
+ Object.defineProperty(exports, '__esModule', { value: true });
+
+ /**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+ function componentWillMount() {
+ // Call this.constructor.gDSFP to support sub-classes.
+ var state = this.constructor.getDerivedStateFromProps(this.props, this.state);
+ if (state !== null && state !== undefined) {
+ this.setState(state);
+ }
+ }
+
+ function componentWillReceiveProps(nextProps) {
+ // Call this.constructor.gDSFP to support sub-classes.
+ // Use the setState() updater to ensure state isn't stale in certain edge cases.
+ function updater(prevState) {
+ var state = this.constructor.getDerivedStateFromProps(nextProps, prevState);
+ return state !== null && state !== undefined ? state : null;
+ }
+ // Binding "this" is important for shallow renderer support.
+ this.setState(updater.bind(this));
+ }
+
+ function componentWillUpdate(nextProps, nextState) {
+ try {
+ var prevProps = this.props;
+ var prevState = this.state;
+ this.props = nextProps;
+ this.state = nextState;
+ this.__reactInternalSnapshotFlag = true;
+ this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(
+ prevProps,
+ prevState
+ );
+ } finally {
+ this.props = prevProps;
+ this.state = prevState;
+ }
+ }
+
+ // React may warn about cWM/cWRP/cWU methods being deprecated.
+ // Add a flag to suppress these warnings for this special case.
+ componentWillMount.__suppressDeprecationWarning = true;
+ componentWillReceiveProps.__suppressDeprecationWarning = true;
+ componentWillUpdate.__suppressDeprecationWarning = true;
+
+ function polyfill(Component) {
+ var prototype = Component.prototype;
+
+ if (!prototype || !prototype.isReactComponent) {
+ throw new Error('Can only polyfill class components');
+ }
+
+ if (
+ typeof Component.getDerivedStateFromProps !== 'function' &&
+ typeof prototype.getSnapshotBeforeUpdate !== 'function'
+ ) {
+ return Component;
+ }
+
+ // If new component APIs are defined, "unsafe" lifecycles won't be called.
+ // Error if any of these lifecycles are present,
+ // Because they would work differently between older and newer (16.3+) versions of React.
+ var foundWillMountName = null;
+ var foundWillReceivePropsName = null;
+ var foundWillUpdateName = null;
+ if (typeof prototype.componentWillMount === 'function') {
+ foundWillMountName = 'componentWillMount';
+ } else if (typeof prototype.UNSAFE_componentWillMount === 'function') {
+ foundWillMountName = 'UNSAFE_componentWillMount';
+ }
+ if (typeof prototype.componentWillReceiveProps === 'function') {
+ foundWillReceivePropsName = 'componentWillReceiveProps';
+ } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') {
+ foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';
+ }
+ if (typeof prototype.componentWillUpdate === 'function') {
+ foundWillUpdateName = 'componentWillUpdate';
+ } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') {
+ foundWillUpdateName = 'UNSAFE_componentWillUpdate';
+ }
+ if (
+ foundWillMountName !== null ||
+ foundWillReceivePropsName !== null ||
+ foundWillUpdateName !== null
+ ) {
+ var componentName = Component.displayName || Component.name;
+ var newApiName =
+ typeof Component.getDerivedStateFromProps === 'function'
+ ? 'getDerivedStateFromProps()'
+ : 'getSnapshotBeforeUpdate()';
+
+ throw Error(
+ 'Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n' +
+ componentName +
+ ' uses ' +
+ newApiName +
+ ' but also contains the following legacy lifecycles:' +
+ (foundWillMountName !== null ? '\n ' + foundWillMountName : '') +
+ (foundWillReceivePropsName !== null
+ ? '\n ' + foundWillReceivePropsName
+ : '') +
+ (foundWillUpdateName !== null ? '\n ' + foundWillUpdateName : '') +
+ '\n\nThe above lifecycles should be removed. Learn more about this warning here:\n' +
+ 'https://fb.me/react-async-component-lifecycle-hooks'
+ );
+ }
+
+ // React <= 16.2 does not support static getDerivedStateFromProps.
+ // As a workaround, use cWM and cWRP to invoke the new static lifecycle.
+ // Newer versions of React will ignore these lifecycles if gDSFP exists.
+ if (typeof Component.getDerivedStateFromProps === 'function') {
+ prototype.componentWillMount = componentWillMount;
+ prototype.componentWillReceiveProps = componentWillReceiveProps;
+ }
+
+ // React <= 16.2 does not support getSnapshotBeforeUpdate.
+ // As a workaround, use cWU to invoke the new lifecycle.
+ // Newer versions of React will ignore that lifecycle if gSBU exists.
+ if (typeof prototype.getSnapshotBeforeUpdate === 'function') {
+ if (typeof prototype.componentDidUpdate !== 'function') {
+ throw new Error(
+ 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype'
+ );
+ }
+
+ prototype.componentWillUpdate = componentWillUpdate;
+
+ var componentDidUpdate = prototype.componentDidUpdate;
+
+ prototype.componentDidUpdate = function componentDidUpdatePolyfill(
+ prevProps,
+ prevState,
+ maybeSnapshot
+ ) {
+ // 16.3+ will not execute our will-update method;
+ // It will pass a snapshot value to did-update though.
+ // Older versions will require our polyfilled will-update value.
+ // We need to handle both cases, but can't just check for the presence of "maybeSnapshot",
+ // Because for <= 15.x versions this might be a "prevContext" object.
+ // We also can't just check "__reactInternalSnapshot",
+ // Because get-snapshot might return a falsy value.
+ // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior.
+ var snapshot = this.__reactInternalSnapshotFlag
+ ? this.__reactInternalSnapshot
+ : maybeSnapshot;
+
+ componentDidUpdate.call(this, prevProps, prevState, snapshot);
+ };
+ }
+
+ return Component;
+ }
+
+ exports.polyfill = polyfill;
+
+
+/***/ }),
+/* 59 */
/***/ (function(module, exports, __webpack_require__) {
'use strict';
@@ -12007,15 +12639,15 @@ return /******/ (function(modules) { // webpackBootstrap
var _propTypes2 = _interopRequireDefault(_propTypes);
- var _InsertModalHeader = __webpack_require__(58);
+ var _InsertModalHeader = __webpack_require__(60);
var _InsertModalHeader2 = _interopRequireDefault(_InsertModalHeader);
- var _InsertModalFooter = __webpack_require__(59);
+ var _InsertModalFooter = __webpack_require__(61);
var _InsertModalFooter2 = _interopRequireDefault(_InsertModalFooter);
- var _InsertModalBody = __webpack_require__(60);
+ var _InsertModalBody = __webpack_require__(62);
var _InsertModalBody2 = _interopRequireDefault(_InsertModalBody);
@@ -12175,17 +12807,17 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(defaultModalClassName, 'defaultModalClassName', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/InsertModal.js');
+ __REACT_HOT_LOADER__.register(defaultModalClassName, 'defaultModalClassName', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertModal.js');
- __REACT_HOT_LOADER__.register(InsertModal, 'InsertModal', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/InsertModal.js');
+ __REACT_HOT_LOADER__.register(InsertModal, 'InsertModal', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertModal.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/InsertModal.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertModal.js');
}();
;
/***/ }),
-/* 58 */
+/* 60 */
/***/ (function(module, exports, __webpack_require__) {
'use strict';
@@ -12339,15 +12971,15 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(InsertModalHeader, 'InsertModalHeader', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/InsertModalHeader.js');
+ __REACT_HOT_LOADER__.register(InsertModalHeader, 'InsertModalHeader', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertModalHeader.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/InsertModalHeader.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertModalHeader.js');
}();
;
/***/ }),
-/* 59 */
+/* 61 */
/***/ (function(module, exports, __webpack_require__) {
'use strict';
@@ -12510,15 +13142,15 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(InsertModalFooter, 'InsertModalFooter', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/InsertModalFooter.js');
+ __REACT_HOT_LOADER__.register(InsertModalFooter, 'InsertModalFooter', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertModalFooter.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/InsertModalFooter.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertModalFooter.js');
}();
;
/***/ }),
-/* 60 */
+/* 62 */
/***/ (function(module, exports, __webpack_require__) {
'use strict';
@@ -12675,15 +13307,15 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(InsertModalBody, 'InsertModalBody', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/InsertModalBody.js');
+ __REACT_HOT_LOADER__.register(InsertModalBody, 'InsertModalBody', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertModalBody.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/InsertModalBody.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertModalBody.js');
}();
;
/***/ }),
-/* 61 */
+/* 63 */
/***/ (function(module, exports, __webpack_require__) {
'use strict';
@@ -12786,17 +13418,17 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(insertBtnDefaultClass, 'insertBtnDefaultClass', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/InsertButton.js');
+ __REACT_HOT_LOADER__.register(insertBtnDefaultClass, 'insertBtnDefaultClass', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertButton.js');
- __REACT_HOT_LOADER__.register(InsertButton, 'InsertButton', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/InsertButton.js');
+ __REACT_HOT_LOADER__.register(InsertButton, 'InsertButton', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertButton.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/InsertButton.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertButton.js');
}();
;
/***/ }),
-/* 62 */
+/* 64 */
/***/ (function(module, exports, __webpack_require__) {
'use strict';
@@ -12899,17 +13531,17 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(deleteBtnDefaultClass, 'deleteBtnDefaultClass', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/DeleteButton.js');
+ __REACT_HOT_LOADER__.register(deleteBtnDefaultClass, 'deleteBtnDefaultClass', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/DeleteButton.js');
- __REACT_HOT_LOADER__.register(DeleteButton, 'DeleteButton', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/DeleteButton.js');
+ __REACT_HOT_LOADER__.register(DeleteButton, 'DeleteButton', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/DeleteButton.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/DeleteButton.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/DeleteButton.js');
}();
;
/***/ }),
-/* 63 */
+/* 65 */
/***/ (function(module, exports, __webpack_require__) {
'use strict';
@@ -13012,17 +13644,17 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(exportCsvBtnDefaultClass, 'exportCsvBtnDefaultClass', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/ExportCSVButton.js');
+ __REACT_HOT_LOADER__.register(exportCsvBtnDefaultClass, 'exportCsvBtnDefaultClass', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ExportCSVButton.js');
- __REACT_HOT_LOADER__.register(ExportCSVButton, 'ExportCSVButton', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/ExportCSVButton.js');
+ __REACT_HOT_LOADER__.register(ExportCSVButton, 'ExportCSVButton', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ExportCSVButton.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/ExportCSVButton.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ExportCSVButton.js');
}();
;
/***/ }),
-/* 64 */
+/* 66 */
/***/ (function(module, exports, __webpack_require__) {
'use strict';
@@ -13128,17 +13760,17 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(showSelectedOnlyBtnDefaultClass, 'showSelectedOnlyBtnDefaultClass', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/ShowSelectedOnlyButton.js');
+ __REACT_HOT_LOADER__.register(showSelectedOnlyBtnDefaultClass, 'showSelectedOnlyBtnDefaultClass', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ShowSelectedOnlyButton.js');
- __REACT_HOT_LOADER__.register(ShowSelectedOnlyButton, 'ShowSelectedOnlyButton', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/ShowSelectedOnlyButton.js');
+ __REACT_HOT_LOADER__.register(ShowSelectedOnlyButton, 'ShowSelectedOnlyButton', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ShowSelectedOnlyButton.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/ShowSelectedOnlyButton.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ShowSelectedOnlyButton.js');
}();
;
/***/ }),
-/* 65 */
+/* 67 */
/***/ (function(module, exports, __webpack_require__) {
'use strict';
@@ -13238,15 +13870,15 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(SearchField, 'SearchField', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/SearchField.js');
+ __REACT_HOT_LOADER__.register(SearchField, 'SearchField', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/SearchField.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/SearchField.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/SearchField.js');
}();
;
/***/ }),
-/* 66 */
+/* 68 */
/***/ (function(module, exports, __webpack_require__) {
'use strict';
@@ -13341,17 +13973,17 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(clearBtnDefaultClass, 'clearBtnDefaultClass', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/ClearSearchButton.js');
+ __REACT_HOT_LOADER__.register(clearBtnDefaultClass, 'clearBtnDefaultClass', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ClearSearchButton.js');
- __REACT_HOT_LOADER__.register(ClearSearchButton, 'ClearSearchButton', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/ClearSearchButton.js');
+ __REACT_HOT_LOADER__.register(ClearSearchButton, 'ClearSearchButton', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ClearSearchButton.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/ClearSearchButton.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ClearSearchButton.js');
}();
;
/***/ }),
-/* 67 */
+/* 69 */
/***/ (function(module, exports, __webpack_require__) {
'use strict';
@@ -13504,15 +14136,15 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(TableFilter, 'TableFilter', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableFilter.js');
+ __REACT_HOT_LOADER__.register(TableFilter, 'TableFilter', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableFilter.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/TableFilter.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableFilter.js');
}();
;
/***/ }),
-/* 68 */
+/* 70 */
/***/ (function(module, exports, __webpack_require__) {
'use strict';
@@ -14382,13 +15014,13 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(TableDataStore, 'TableDataStore', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/store/TableDataStore.js');
+ __REACT_HOT_LOADER__.register(TableDataStore, 'TableDataStore', '/home/nogi/nogi/forks/react-bootstrap-table/src/store/TableDataStore.js');
}();
;
/***/ }),
-/* 69 */
+/* 71 */
/***/ (function(module, exports, __webpack_require__) {
'use strict';
@@ -14412,7 +15044,7 @@ return /******/ (function(modules) { // webpackBootstrap
/* eslint no-var: 0 */
/* eslint no-unused-vars: 0 */
if (_util2.default.canUseDOM()) {
- var filesaver = __webpack_require__(70);
+ var filesaver = __webpack_require__(72);
var saveAs = filesaver.saveAs;
}
@@ -14492,19 +15124,19 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(saveAs, 'saveAs', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/csv_export_util.js');
+ __REACT_HOT_LOADER__.register(saveAs, 'saveAs', '/home/nogi/nogi/forks/react-bootstrap-table/src/csv_export_util.js');
- __REACT_HOT_LOADER__.register(toString, 'toString', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/csv_export_util.js');
+ __REACT_HOT_LOADER__.register(toString, 'toString', '/home/nogi/nogi/forks/react-bootstrap-table/src/csv_export_util.js');
- __REACT_HOT_LOADER__.register(exportCSV, 'exportCSV', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/csv_export_util.js');
+ __REACT_HOT_LOADER__.register(exportCSV, 'exportCSV', '/home/nogi/nogi/forks/react-bootstrap-table/src/csv_export_util.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/csv_export_util.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/csv_export_util.js');
}();
;
/***/ }),
-/* 70 */
+/* 72 */
/***/ (function(module, exports, __webpack_require__) {
var __WEBPACK_AMD_DEFINE_RESULT__;"use strict";
@@ -14684,7 +15316,7 @@ return /******/ (function(modules) { // webpackBootstrap
if (typeof module !== "undefined" && module.exports) {
module.exports.saveAs = saveAs;
- } else if ("function" !== "undefined" && __webpack_require__(71) !== null && __webpack_require__(72) !== null) {
+ } else if ("function" !== "undefined" && __webpack_require__(73) !== null && __webpack_require__(74) !== null) {
!(__WEBPACK_AMD_DEFINE_RESULT__ = function () {
return saveAs;
}.call(exports, __webpack_require__, exports, module), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
@@ -14696,20 +15328,20 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(saveAs, "saveAs", "/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/filesaver.js");
+ __REACT_HOT_LOADER__.register(saveAs, "saveAs", "/home/nogi/nogi/forks/react-bootstrap-table/src/filesaver.js");
}();
;
/***/ }),
-/* 71 */
+/* 73 */
/***/ (function(module, exports) {
module.exports = function() { throw new Error("define cannot be used indirect"); };
/***/ }),
-/* 72 */
+/* 74 */
/***/ (function(module, exports) {
/* WEBPACK VAR INJECTION */(function(__webpack_amd_options__) {module.exports = __webpack_amd_options__;
@@ -14717,7 +15349,7 @@ return /******/ (function(modules) { // webpackBootstrap
/* WEBPACK VAR INJECTION */}.call(exports, {}))
/***/ }),
-/* 73 */
+/* 75 */
/***/ (function(module, exports, __webpack_require__) {
'use strict';
@@ -14735,7 +15367,7 @@ return /******/ (function(modules) { // webpackBootstrap
var _Const2 = _interopRequireDefault(_Const);
- var _events = __webpack_require__(74);
+ var _events = __webpack_require__(76);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -14800,13 +15432,13 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(Filter, 'Filter', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/Filter.js');
+ __REACT_HOT_LOADER__.register(Filter, 'Filter', '/home/nogi/nogi/forks/react-bootstrap-table/src/Filter.js');
}();
;
/***/ }),
-/* 74 */
+/* 76 */
/***/ (function(module, exports) {
// Copyright Joyent, Inc. and other Node contributors.
@@ -14868,12 +15500,8 @@ return /******/ (function(modules) { // webpackBootstrap
er = arguments[1];
if (er instanceof Error) {
throw er; // Unhandled 'error' event
- } else {
- // At least give some kind of context to the user
- var err = new Error('Uncaught, unspecified "error" event. (' + er + ')');
- err.context = er;
- throw err;
}
+ throw TypeError('Uncaught, unspecified "error" event.');
}
}
@@ -14896,11 +15524,18 @@ return /******/ (function(modules) { // webpackBootstrap
break;
// slower
default:
- args = Array.prototype.slice.call(arguments, 1);
+ len = arguments.length;
+ args = new Array(len - 1);
+ for (i = 1; i < len; i++)
+ args[i - 1] = arguments[i];
handler.apply(this, args);
}
} else if (isObject(handler)) {
- args = Array.prototype.slice.call(arguments, 1);
+ len = arguments.length;
+ args = new Array(len - 1);
+ for (i = 1; i < len; i++)
+ args[i - 1] = arguments[i];
+
listeners = handler.slice();
len = listeners.length;
for (i = 0; i < len; i++)
@@ -14938,6 +15573,7 @@ return /******/ (function(modules) { // webpackBootstrap
// Check for listener leak
if (isObject(this._events[type]) && !this._events[type].warned) {
+ var m;
if (!isUndefined(this._maxListeners)) {
m = this._maxListeners;
} else {
@@ -15059,7 +15695,7 @@ return /******/ (function(modules) { // webpackBootstrap
if (isFunction(listeners)) {
this.removeListener(type, listeners);
- } else if (listeners) {
+ } else {
// LIFO order
while (listeners.length)
this.removeListener(type, listeners[listeners.length - 1]);
@@ -15080,20 +15716,15 @@ return /******/ (function(modules) { // webpackBootstrap
return ret;
};
- EventEmitter.prototype.listenerCount = function(type) {
- if (this._events) {
- var evlistener = this._events[type];
-
- if (isFunction(evlistener))
- return 1;
- else if (evlistener)
- return evlistener.length;
- }
- return 0;
- };
-
EventEmitter.listenerCount = function(emitter, type) {
- return emitter.listenerCount(type);
+ var ret;
+ if (!emitter._events || !emitter._events[type])
+ ret = 0;
+ else if (isFunction(emitter._events[type]))
+ ret = 1;
+ else
+ ret = emitter._events[type].length;
+ return ret;
};
function isFunction(arg) {
@@ -15114,7 +15745,7 @@ return /******/ (function(modules) { // webpackBootstrap
/***/ }),
-/* 75 */
+/* 77 */
/***/ (function(module, exports, __webpack_require__) {
'use strict';
@@ -15192,9 +15823,9 @@ return /******/ (function(modules) { // webpackBootstrap
return;
}
- __REACT_HOT_LOADER__.register(ButtonGroup, 'ButtonGroup', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/ButtonGroup.js');
+ __REACT_HOT_LOADER__.register(ButtonGroup, 'ButtonGroup', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ButtonGroup.js');
- __REACT_HOT_LOADER__.register(_default, 'default', '/Users/allen/Node/react-bootstrap-table-new/react-bootstrap-table/src/toolbar/ButtonGroup.js');
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ButtonGroup.js');
}();
;
diff --git a/dist/react-bootstrap-table.js.map b/dist/react-bootstrap-table.js.map
index c4dfb05c5..793c855f9 100644
--- a/dist/react-bootstrap-table.js.map
+++ b/dist/react-bootstrap-table.js.map
@@ -1 +1 @@
-{"version":3,"file":"react-bootstrap-table.js","sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap 6af9d00c49e3d236f210","webpack:///src/index.js","webpack:///src/BootstrapTable.js","webpack:///external {\"root\":\"React\",\"commonjs2\":\"react\",\"commonjs\":\"react\",\"amd\":\"react\"}","webpack:///./~/prop-types/index.js","webpack:///./~/process/browser.js","webpack:///./~/prop-types/factoryWithTypeCheckers.js","webpack:///./~/fbjs/lib/emptyFunction.js","webpack:///./~/fbjs/lib/invariant.js","webpack:///./~/fbjs/lib/warning.js","webpack:///./~/object-assign/index.js","webpack:///./~/prop-types/lib/ReactPropTypesSecret.js","webpack:///./~/prop-types/checkPropTypes.js","webpack:///./~/prop-types/factoryWithThrowingShims.js","webpack:///./~/classnames/index.js","webpack:///./~/react-s-alert/index.js","webpack:///./~/react-s-alert/dist/SAlert.js","webpack:///./~/react-s-alert/dist/SAlertContent.js","webpack:///external {\"root\":\"ReactDOM\",\"commonjs2\":\"react-dom\",\"commonjs\":\"react-dom\",\"amd\":\"react-dom\"}","webpack:///./~/react-s-alert/dist/s-alert-parts/s-alert-tools.js","webpack:///./~/react-s-alert/dist/s-alert-parts/s-alert-store.js","webpack:///./~/react-s-alert/dist/SAlertContentTmpl.js","webpack:///./~/react-s-alert/dist/s-alert-parts/s-alert-data-prep.js","webpack:///src/Const.js","webpack:///src/TableHeaderColumn.js","webpack:///src/util.js","webpack:///src/filters/Date.js","webpack:///src/filters/Text.js","webpack:///src/filters/Regex.js","webpack:///src/filters/Select.js","webpack:///src/filters/Number.js","webpack:///src/TableHeader.js","webpack:///src/SelectRowHeaderColumn.js","webpack:///src/ExpandRowHeaderColumn.js","webpack:///src/TableFooter.js","webpack:///src/TableBody.js","webpack:///src/TableRow.js","webpack:///src/TableColumn.js","webpack:///src/TableEditColumn.js","webpack:///src/Editor.js","webpack:///src/Notification.js","webpack:///src/ExpandComponent.js","webpack:///src/pagination/PaginationList.js","webpack:///src/pagination/PageButton.js","webpack:///src/pagination/SizePerPageDropDown.js","webpack:///src/toolbar/ToolBar.js","webpack:///./~/react-modal/lib/index.js","webpack:///./~/react-modal/lib/components/Modal.js","webpack:///./~/react-modal/lib/components/ModalPortal.js","webpack:///./~/react-modal/lib/helpers/focusManager.js","webpack:///./~/react-modal/lib/helpers/tabbable.js","webpack:///./~/react-modal/lib/helpers/scopeTab.js","webpack:///./~/react-modal/lib/helpers/ariaAppHider.js","webpack:///./~/warning/browser.js","webpack:///./~/react-modal/lib/helpers/refCount.js","webpack:///./~/react-modal/lib/helpers/bodyClassList.js","webpack:///./~/react-modal/lib/helpers/safeHTMLElement.js","webpack:///./~/exenv/index.js","webpack:///src/toolbar/InsertModal.js","webpack:///src/toolbar/InsertModalHeader.js","webpack:///src/toolbar/InsertModalFooter.js","webpack:///src/toolbar/InsertModalBody.js","webpack:///src/toolbar/InsertButton.js","webpack:///src/toolbar/DeleteButton.js","webpack:///src/toolbar/ExportCSVButton.js","webpack:///src/toolbar/ShowSelectedOnlyButton.js","webpack:///src/toolbar/SearchField.js","webpack:///src/toolbar/ClearSearchButton.js","webpack:///src/TableFilter.js","webpack:///src/store/TableDataStore.js","webpack:///src/csv_export_util.js","webpack:///src/filesaver.js","webpack:///(webpack)/buildin/amd-define.js","webpack:///(webpack)/buildin/amd-options.js","webpack:///src/Filter.js","webpack:///./~/events/events.js","webpack:///src/toolbar/ButtonGroup.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"react\"), require(\"react-dom\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"react\", \"react-dom\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ReactBootstrapTable\"] = factory(require(\"react\"), require(\"react-dom\"));\n\telse\n\t\troot[\"ReactBootstrapTable\"] = factory(root[\"React\"], root[\"ReactDOM\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_2__, __WEBPACK_EXTERNAL_MODULE_17__) {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 6af9d00c49e3d236f210","import BootstrapTable from './BootstrapTable';\nimport TableHeaderColumn from './TableHeaderColumn';\nimport InsertModalHeader from './toolbar/InsertModalHeader';\nimport InsertModalBody from './toolbar/InsertModalBody';\nimport InsertModalFooter from './toolbar/InsertModalFooter';\nimport InsertButton from './toolbar/InsertButton';\nimport DeleteButton from './toolbar/DeleteButton';\nimport ExportCSVButton from './toolbar/ExportCSVButton';\nimport ShowSelectedOnlyButton from './toolbar/ShowSelectedOnlyButton';\nimport ClearSearchButton from './toolbar/ClearSearchButton';\nimport SearchField from './toolbar/SearchField';\nimport ButtonGroup from './toolbar/ButtonGroup';\nimport SizePerPageDropDown from './pagination/SizePerPageDropDown';\n\nif (typeof window !== 'undefined') {\n window.BootstrapTable = BootstrapTable;\n window.TableHeaderColumn = TableHeaderColumn;\n window.InsertModalHeader = InsertModalHeader;\n window.InsertModalBody = InsertModalBody;\n window.InsertModalFooter = InsertModalFooter;\n window.InsertButton = InsertButton;\n window.DeleteButton = DeleteButton;\n window.ShowSelectedOnlyButton = ShowSelectedOnlyButton;\n window.ExportCSVButton = ExportCSVButton;\n window.ClearSearchButton = ClearSearchButton;\n window.SearchField = SearchField;\n window.ButtonGroup = ButtonGroup;\n window.SizePerPageDropDown = SizePerPageDropDown;\n}\nexport {\n BootstrapTable,\n TableHeaderColumn,\n InsertModalHeader,\n InsertModalBody,\n InsertModalFooter,\n InsertButton,\n DeleteButton,\n ShowSelectedOnlyButton,\n ExportCSVButton,\n ClearSearchButton,\n SearchField,\n ButtonGroup,\n SizePerPageDropDown\n};\n\n\n\n// WEBPACK FOOTER //\n// src/index.js","/* eslint no-alert: 0 */\n/* eslint max-len: 0 */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport classSet from 'classnames';\nimport Alert from 'react-s-alert';\nimport Const from './Const';\nimport TableHeaderColumn from './TableHeaderColumn';\nimport TableHeader from './TableHeader';\nimport TableFooter from './TableFooter';\nimport TableBody from './TableBody';\nimport PaginationList from './pagination/PaginationList';\nimport ToolBar from './toolbar/ToolBar';\nimport TableFilter from './TableFilter';\nimport { TableDataStore } from './store/TableDataStore';\nimport Util from './util';\nimport exportCSVUtil from './csv_export_util';\nimport { Filter } from './Filter';\n\n\nclass BootstrapTable extends Component {\n\n constructor(props) {\n super(props);\n this.isIE = false;\n if (Util.canUseDOM()) {\n this.isIE = document.documentMode;\n }\n this.store = new TableDataStore(this.props.data ? this.props.data.slice() : []);\n this.isVerticalScroll = false;\n this.initTable(this.props);\n\n if (this.props.selectRow && this.props.selectRow.selected) {\n const copy = this.props.selectRow.selected.slice();\n this.store.setSelectedRowKey(copy);\n }\n let currPage = Const.PAGE_START_INDEX;\n if (typeof this.props.options.page !== 'undefined') {\n currPage = this.props.options.page;\n } else if (typeof this.props.options.pageStartIndex !== 'undefined') {\n currPage = this.props.options.pageStartIndex;\n }\n\n this._adjustHeaderWidth = this._adjustHeaderWidth.bind(this);\n this._adjustHeight = this._adjustHeight.bind(this);\n this._adjustTable = this._adjustTable.bind(this);\n this.toggleExpandAllChilds = this.toggleExpandAllChilds.bind(this);\n\n let expandedKeys = [];\n if (this.props.options.expandAllChilds !== null &&\n this.props.options.expandAllChilds !== undefined && this.props.options.expandAllChilds) {\n expandedKeys = this.store.getAllRowkey();\n } else if (this.props.options.expanding !== undefined && this.props.options.expanding !== null) {\n expandedKeys = this.props.options.expanding;\n }\n\n this.state = {\n data: this.getTableData(),\n currPage: currPage,\n expanding: expandedKeys,\n sizePerPage: this.props.options.sizePerPage || Const.SIZE_PER_PAGE_LIST[0],\n selectedRowKeys: this.store.getSelectedRowKeys(),\n reset: false,\n x: this.props.keyBoardNav ? 0 : -1,\n y: this.props.keyBoardNav ? 0 : -1\n };\n }\n\n initTable(props) {\n // If columns changed, clean removed columns that had filters\n if (props.children !== this.props.children && this.filter) {\n const nextDataFields = React.Children.map(props.children, column => column.props.dataField);\n React.Children.forEach(this.props.children, column => {\n const { dataField, filter } = column.props;\n if (filter && !nextDataFields.includes(dataField)) {\n // Clear filter\n this.filter.handleFilter(dataField, '', filter.type, filter);\n }\n });\n }\n\n let { keyField } = props;\n\n const isKeyFieldDefined = typeof keyField === 'string' && keyField.length;\n React.Children.forEach(props.children, column => {\n if (column === null || column === undefined) {\n // Skip null and undefined value\n return;\n }\n if (column.props.isKey) {\n if (keyField) {\n throw new Error('Error. Multiple key column detected in TableHeaderColumn.');\n }\n keyField = column.props.dataField;\n }\n if (column.props.filter) {\n // a column contains a filter\n if (!this.filter) {\n // first time create the filter on the BootstrapTable\n this.filter = new Filter();\n }\n // pass the filter to column with filter\n column.props.filter.emitter = this.filter;\n }\n });\n\n // if a column filter was created, add 'onFilterChange' listener\n if (this.filter) {\n this.filter.removeAllListeners('onFilterChange');\n this.filter.on('onFilterChange', (currentFilter) => {\n this.handleFilterData(currentFilter);\n });\n }\n\n this.colInfos = this.getColumnsDescription(props).reduce(( prev, curr ) => {\n prev[curr.name] = curr;\n return prev;\n }, {});\n\n if (!isKeyFieldDefined && !keyField) {\n throw new Error(`Error. No any key column defined in TableHeaderColumn.\n Use 'isKey={true}' to specify a unique column after version 0.5.4.`);\n }\n\n this.store.setProps({\n isPagination: props.pagination,\n keyField: keyField,\n colInfos: this.colInfos,\n multiColumnSearch: props.multiColumnSearch,\n strictSearch: props.strictSearch,\n multiColumnSort: props.multiColumnSort,\n remote: this.props.remote\n });\n }\n\n getTableData() {\n let result = [];\n const { options, pagination } = this.props;\n const sortName = options.defaultSortName || options.sortName;\n const sortOrder = options.defaultSortOrder || options.sortOrder;\n const searchText = options.defaultSearch;\n\n if (sortName && sortOrder) {\n this.store.setSortInfo(sortOrder, sortName);\n if (!this.allowRemote(Const.REMOTE_SORT)) {\n this.store.sort();\n }\n }\n\n if (searchText) {\n this.store.search(searchText);\n }\n\n if (pagination) {\n let page;\n let sizePerPage;\n if (this.store.isChangedPage()) {\n sizePerPage = this.state.sizePerPage;\n page = this.state.currPage;\n } else {\n sizePerPage = options.sizePerPage || Const.SIZE_PER_PAGE_LIST[0];\n page = options.page || 1;\n }\n result = this.store.page(page, sizePerPage).get();\n } else {\n result = this.store.get();\n }\n return result;\n }\n\n getColumnsDescription({ children }) {\n let rowCount = 0;\n React.Children.forEach(children, (column) => {\n if (column === null || column === undefined) {\n // Skip null and undefined value\n return;\n }\n\n if (Number(column.props.row) > rowCount) {\n rowCount = Number(column.props.row);\n }\n });\n return React.Children.map(children, (column, i) => {\n if (column === null || column === undefined) {\n // Return null for empty objects\n return null;\n }\n\n const rowIndex = column.props.row ? Number(column.props.row) : 0;\n const rowSpan = column.props.rowSpan ? Number(column.props.rowSpan) : 1;\n if ((rowSpan + rowIndex) === (rowCount + 1)) {\n const columnDescription = this.getColumnDescription(column);\n\n columnDescription.index = i;\n return columnDescription;\n }\n });\n }\n\n getColumnDescription(column) {\n let columnDescription = {\n name: column.props.dataField,\n align: column.props.dataAlign,\n sort: column.props.dataSort,\n format: column.props.dataFormat,\n formatExtraData: column.props.formatExtraData,\n filterFormatted: column.props.filterFormatted,\n filterValue: column.props.filterValue,\n editable: column.props.editable,\n customEditor: column.props.customEditor,\n hidden: column.props.hidden,\n hiddenOnInsert: column.props.hiddenOnInsert,\n searchable: column.props.searchable,\n className: column.props.columnClassName,\n editClassName: column.props.editColumnClassName,\n invalidEditColumnClassName: column.props.invalidEditColumnClassName,\n columnTitle: column.props.columnTitle,\n width: column.props.width,\n text: column.props.headerText || column.props.children,\n sortFunc: column.props.sortFunc,\n sortFuncExtraData: column.props.sortFuncExtraData,\n export: column.props.export,\n expandable: column.props.expandable,\n attrs: column.props.tdAttr,\n editAttrs: column.props.editTdAttr,\n style: column.props.tdStyle\n };\n\n if (column.type.name !== TableHeaderColumn.name && React.isValidElement(column.props.children)) {\n columnDescription = {\n ...columnDescription,\n ...this.getColumnDescription(React.Children.only(column.props.children))\n };\n }\n\n return columnDescription;\n }\n\n reset() {\n const { pageStartIndex } = this.props.options;\n this.store.clean();\n this.body.setState({ currEditCell: null });\n this.setState(() => {\n return {\n data: this.getTableData(),\n currPage: Util.getFirstPage(pageStartIndex),\n expanding: [],\n sizePerPage: Const.SIZE_PER_PAGE_LIST[0],\n selectedRowKeys: [],\n reset: true\n };\n });\n }\n\n componentWillReceiveProps(nextProps) {\n this.initTable(nextProps);\n const { options, selectRow } = nextProps;\n let { replace } = nextProps;\n replace = replace || this.props.replace;\n\n if (!nextProps.data) {\n return;\n }\n this.store.setData(nextProps.data.slice());\n\n if (!replace) {\n // from #481\n let page = this.state.currPage;\n if (this.props.options.page !== options.page) {\n page = options.page;\n }\n // from #481\n let sizePerPage = this.state.sizePerPage;\n if (this.props.options.sizePerPage !== options.sizePerPage) {\n sizePerPage = options.sizePerPage;\n }\n\n if (this.isRemoteDataSource()) {\n const newState = { sizePerPage, reset: false, currPage: page };\n let data = nextProps.data.slice();\n if (nextProps.pagination && !this.allowRemote(Const.REMOTE_PAGE)) {\n data = this.store.page(page, sizePerPage).get();\n }\n\n if (this.store.isOnFilter) {\n if (this.store.searchText) this.handleSearch(this.store.searchText);\n if (this.store.filterObj) this.handleFilterData(this.store.filterObj);\n newState.currPage = Util.getFirstPage(nextProps.options.pageStartIndex);\n } else {\n if (!this.allowRemote(Const.REMOTE_SORT)) {\n data = this.store.sort().get();\n } else {\n const { options: currentOptions } = this.props;\n const sortName = options.sortName;\n const sortOrder = options.sortOrder;\n if (currentOptions.sortName !== sortName || currentOptions.sortOrder !== sortOrder) {\n this.store.setSortInfo(sortOrder, options.sortName);\n }\n }\n newState.data = data;\n }\n this.setState(() => newState);\n } else {\n // #125\n // remove !options.page for #709\n if (page > Math.ceil(nextProps.data.length / sizePerPage)) {\n page = 1;\n }\n const sortList = this.store.getSortInfo();\n const sortField = options.sortName;\n const sortOrder = options.sortOrder;\n if (sortField && sortOrder) {\n this.store.setSortInfo(sortOrder, sortField);\n this.store.sort();\n } else if (sortList.length > 0) {\n this.store.sort();\n }\n const data = this.store.page(page, sizePerPage).get();\n this.setState(() => {\n return {\n data,\n currPage: page,\n sizePerPage,\n reset: false\n };\n });\n\n if (this.store.isSearching && options.afterSearch) {\n options.afterSearch(this.store.searchText, this.store.getDataIgnoringPagination());\n }\n\n if (this.store.isFiltering && options.afterColumnFilter) {\n options.afterColumnFilter(this.store.filterObj, this.store.getDataIgnoringPagination());\n }\n }\n\n // If setting the expanded rows is being handled externally\n // then overwrite the current expanded rows.\n if (this.props.options.expanding !== options.expanding) {\n this.setState(() => {\n return {\n expanding: options.expanding || []\n };\n });\n }\n\n if (selectRow && selectRow.selected) {\n // set default select rows to store.\n const copy = selectRow.selected.slice();\n this.store.setSelectedRowKey(copy);\n this.setState(() => {\n return {\n selectedRowKeys: copy,\n reset: false\n };\n });\n }\n } else {\n this.reset();\n }\n }\n\n componentDidMount() {\n this._adjustTable();\n window.addEventListener('resize', this._adjustTable);\n this.body.container.addEventListener('scroll', this._scrollHeader);\n if (this.props.footer) {\n this.body.container.addEventListener('scroll', this._scrollFooter);\n }\n if (this.props.scrollTop) {\n this._scrollTop();\n }\n }\n\n componentWillUnmount() {\n window.removeEventListener('resize', this._adjustTable);\n if (this.body && this.body.container) {\n this.body.container.removeEventListener('scroll', this._scrollHeader);\n if (this.props.footer) {\n this.body.container.removeEventListener('scroll', this._scrollFooter);\n }\n }\n if (this.filter) {\n this.filter.removeAllListeners('onFilterChange');\n }\n }\n\n componentDidUpdate() {\n this._adjustTable();\n if (this.props.options.afterTableComplete) {\n this.props.options.afterTableComplete();\n }\n }\n\n /**\n * Returns true if in the current configuration,\n * the datagrid should load its data remotely.\n *\n * @param {Object} [props] Optional. If not given, this.props will be used\n * @return {Boolean}\n */\n isRemoteDataSource(props) {\n const { remote } = (props || this.props);\n return remote === true || Util.isFunction(remote);\n }\n\n /**\n * Returns true if this action can be handled remote store\n * From #990, Sometimes, we need some actions as remote, some actions are handled by default\n * so function will tell you the target action is can be handled as remote or not.\n * @param {String} [action] Required.\n * @param {Object} [props] Optional. If not given, this.props will be used\n * @return {Boolean}\n */\n allowRemote(action, props) {\n const { remote } = (props || this.props);\n if (typeof remote === 'function') {\n const remoteObj = remote(Const.REMOTE);\n return remoteObj[action];\n } else {\n return remote;\n }\n }\n\n render() {\n const style = {\n height: this.props.height,\n maxHeight: this.props.maxHeight\n };\n\n const columns = this.getColumnsDescription(this.props);\n const sortList = this.store.getSortInfo();\n const pagination = this.renderPagination();\n const toolBar = this.renderToolBar();\n const tableFilter = this.renderTableFilter(columns);\n const isSelectAll = this.isSelectAll();\n const expandColumnOptions = this.props.expandColumnOptions;\n if (typeof expandColumnOptions.expandColumnBeforeSelectColumn === 'undefined') {\n expandColumnOptions.expandColumnBeforeSelectColumn = true;\n }\n const colGroups = Util.renderColGroup(columns, this.props.selectRow, expandColumnOptions, this.props.version);\n const tableFooter = this.renderTableFooter(this.props.footerData, this.state.data, columns, colGroups);\n let sortIndicator = this.props.options.sortIndicator;\n if (typeof this.props.options.sortIndicator === 'undefined') sortIndicator = true;\n\n const { paginationPosition = Const.PAGINATION_POS_BOTTOM } = this.props.options;\n const showPaginationOnTop = paginationPosition !== Const.PAGINATION_POS_BOTTOM;\n const showPaginationOnBottom = paginationPosition !== Const.PAGINATION_POS_TOP;\n const selectRow = { ...this.props.selectRow };\n if (this.props.cellEdit && this.props.cellEdit.mode !== Const.CELL_EDIT_NONE) {\n selectRow.clickToSelect = false;\n }\n\n const { toolbarPosition = Const.TOOLBAR_POS_TOP } = this.props.options;\n const showToolbarOnTop = toolbarPosition !== Const.TOOLBAR_POS_BOTTOM;\n const showToolbarOnBottom = toolbarPosition !== Const.TOOLBAR_POS_TOP;\n const { hideRowOnExpand = false } = this.props.options;\n return (\n \n { showToolbarOnTop ? toolBar : null }\n { showPaginationOnTop ? pagination : null }\n
this.table = node }\n className={ classSet('react-bs-table', { 'react-bs-table-bordered': this.props.bordered }, this.props.tableContainerClass) }\n style={ { ...style, ...this.props.tableStyle } }\n onMouseEnter={ this.handleMouseEnter }\n onMouseLeave={ this.handleMouseLeave }>\n
this.header = node }\n version={ this.props.version }\n colGroups={ colGroups }\n headerContainerClass={ this.props.headerContainerClass }\n tableHeaderClass={ this.props.tableHeaderClass }\n style={ this.props.headerStyle }\n rowSelectType={ this.props.selectRow.mode }\n customComponent={ this.props.selectRow.customComponent }\n hideSelectColumn={ this.props.selectRow.hideSelectColumn }\n sortList={ sortList }\n sortIndicator={ sortIndicator }\n onSort={ this.handleSort }\n onSelectAllRow={ this.handleSelectAllRow }\n bordered={ this.props.bordered }\n condensed={ this.props.condensed }\n isFiltered={ this.filter ? true : false }\n isSelectAll={ isSelectAll }\n reset={ this.state.reset }\n expandColumnVisible={ expandColumnOptions.expandColumnVisible }\n expandColumnComponent={ expandColumnOptions.expandColumnComponent }\n expandedColumnHeaderComponent={ expandColumnOptions.expandedColumnHeaderComponent }\n noAnyExpand={ this.state.expanding.length === 0 }\n expandAll={ this.props.options.expandAll }\n toggleExpandAllChilds={ this.toggleExpandAllChilds }\n expandColumnBeforeSelectColumn={ expandColumnOptions.expandColumnBeforeSelectColumn }>\n { this.props.children }\n \n
this.body = node }\n bodyContainerClass={ this.props.bodyContainerClass }\n tableBodyClass={ this.props.tableBodyClass }\n style={ { ...style, ...this.props.bodyStyle } }\n data={ this.state.data }\n version={ this.props.version }\n expandComponent={ this.props.expandComponent }\n expandableRow={ this.props.expandableRow }\n expandRowBgColor={ this.props.options.expandRowBgColor }\n expandBy={ this.props.options.expandBy || Const.EXPAND_BY_ROW }\n expandBodyClass={ this.props.options.expandBodyClass }\n expandParentClass={ this.props.options.expandParentClass }\n columns={ columns }\n trClassName={ this.props.trClassName }\n trStyle={ this.props.trStyle }\n striped={ this.props.striped }\n bordered={ this.props.bordered }\n hover={ this.props.hover }\n keyField={ this.store.getKeyField() }\n condensed={ this.props.condensed }\n selectRow={ selectRow }\n expandColumnOptions={ this.props.expandColumnOptions }\n cellEdit={ this.props.cellEdit }\n selectedRowKeys={ this.state.selectedRowKeys }\n onRowClick={ this.handleRowClick }\n onRowDoubleClick={ this.handleRowDoubleClick }\n onRowMouseOver={ this.handleRowMouseOver }\n onRowMouseOut={ this.handleRowMouseOut }\n onSelectRow={ this.handleSelectRow }\n noDataText={ this.props.options.noDataText }\n withoutNoDataText={ this.props.options.withoutNoDataText }\n expanding={ this.state.expanding }\n onExpand={ this.handleExpandRow }\n onlyOneExpanding={ this.props.options.onlyOneExpanding }\n beforeShowError={ this.props.options.beforeShowError }\n keyBoardNav={ this.props.keyBoardNav }\n onNavigateCell={ this.handleNavigateCell }\n x={ this.state.x }\n y={ this.state.y }\n withoutTabIndex={ this.props.withoutTabIndex }\n hideRowOnExpand={ hideRowOnExpand }\n onEditCell={ this.handleEditCell } />\n {\n tableFooter\n }\n \n { tableFilter }\n { showPaginationOnBottom ? pagination : null }\n\n { showToolbarOnBottom ? toolBar : null }\n { this.props.renderAlert ?
: null }\n
\n );\n }\n\n isSelectAll() {\n if (this.store.isEmpty()) return false;\n const { selectRow: { unselectable, onlyUnselectVisible } } = this.props;\n const keyField = this.store.getKeyField();\n const allRowKeys = onlyUnselectVisible ?\n this.store.get().map(r => r[keyField]) :\n this.store.getAllRowkey();\n let defaultSelectRowKeys = this.store.getSelectedRowKeys();\n\n if (onlyUnselectVisible) {\n defaultSelectRowKeys = defaultSelectRowKeys.filter(x => x !== allRowKeys);\n }\n\n if (defaultSelectRowKeys.length === 0) return false;\n let match = 0;\n let noFound = 0;\n let unSelectableCnt = 0;\n defaultSelectRowKeys.forEach(selected => {\n if (allRowKeys.indexOf(selected) !== -1) match++;\n else noFound++;\n if (unselectable &&\n unselectable.indexOf(selected) !== -1) unSelectableCnt++;\n });\n\n if (noFound === defaultSelectRowKeys.length) return false;\n if (match === allRowKeys.length) {\n return true;\n } else {\n if (unselectable && match <= unSelectableCnt &&\n unSelectableCnt === unselectable.length) return false;\n else return 'indeterminate';\n }\n // return (match === allRowKeys.length) ? true : 'indeterminate';\n }\n\n cleanSelected() {\n this.store.setSelectedRowKey([]);\n this.setState(() => {\n return {\n selectedRowKeys: [],\n reset: false\n };\n });\n }\n\n cleanSort() {\n this.store.cleanSortInfo();\n this.setState(() => {\n return {\n reset: false\n };\n });\n }\n\n handleSort = (order, sortField) => {\n const { autoCollapse: { sort }, options } = this.props;\n if (options.onSortChange) {\n options.onSortChange(sortField, order, this.props);\n }\n this.store.setSortInfo(order, sortField);\n if (this.allowRemote(Const.REMOTE_SORT)) {\n if (sort) {\n this.setState(() => {\n return {\n expanding: []\n };\n });\n }\n return;\n }\n\n const result = this.store.sort().get();\n this.setState(() => {\n const newState = {\n data: result,\n reset: false\n };\n if (sort) newState.expanding = [];\n return newState;\n });\n }\n\n handleExpandRow = (expanding, rowKey, isRowExpanding, event) => {\n const { onExpand } = this.props.options;\n if (onExpand) {\n onExpand(rowKey, !isRowExpanding, event);\n }\n this.setState(() => { return { expanding, reset: false }; }, () => {\n this._adjustHeaderWidth();\n });\n }\n\n toggleExpandAllChilds() {\n const { expanding } = this.state;\n if (expanding.length > 0) {\n this.setState(() => {\n return {\n expanding: [],\n reset: false\n };\n });\n } else {\n this.setState(() => {\n return {\n expanding: this.store.getAllRowkey(),\n reset: false\n };\n });\n }\n }\n\n handlePaginationData = (page, sizePerPage) => {\n const { onPageChange, pageStartIndex } = this.props.options;\n const emptyTable = this.store.isEmpty();\n if (onPageChange) {\n onPageChange(page, sizePerPage);\n }\n\n const state = {\n sizePerPage,\n reset: false\n };\n if (!emptyTable) state.currPage = page;\n this.setState(() => state);\n\n if (this.allowRemote(Const.REMOTE_PAGE) || emptyTable) {\n return;\n }\n\n const result = this.store.page(Util.getNormalizedPage(pageStartIndex, page), sizePerPage).get();\n this.setState(() => { return { data: result, reset: false }; });\n }\n\n handleMouseLeave = () => {\n if (this.props.options.onMouseLeave) {\n this.props.options.onMouseLeave();\n }\n }\n\n handleMouseEnter = () => {\n if (this.props.options.onMouseEnter) {\n this.props.options.onMouseEnter();\n }\n }\n\n handleRowMouseOut = (row, event) => {\n if (this.props.options.onRowMouseOut) {\n this.props.options.onRowMouseOut(row, event);\n }\n }\n\n handleRowMouseOver = (row, event) => {\n if (this.props.options.onRowMouseOver) {\n this.props.options.onRowMouseOver(row, event);\n }\n }\n\n handleNavigateCell = ({ x: offSetX, y: offSetY, lastEditCell }) => {\n const { pagination } = this.props;\n let { x, y, currPage } = this.state;\n x += offSetX;\n y += offSetY;\n\n const columns = this.store.getColInfos();\n const visibleRowSize = this.state.data.length;\n const visibleColumnSize = Object.keys(columns).filter(k => !columns[k].hidden).length;\n\n if (y >= visibleRowSize) {\n currPage++;\n const lastPage = pagination ? this.pagination.getLastPage() : -1;\n if (currPage <= lastPage) {\n this.handlePaginationData(currPage, this.state.sizePerPage);\n } else {\n return;\n }\n y = 0;\n } else if (y < 0) {\n currPage--;\n if (currPage > 0) {\n this.handlePaginationData(currPage, this.state.sizePerPage);\n } else {\n return;\n }\n y = visibleRowSize - 1;\n } else if (x >= visibleColumnSize) {\n if ((y + 1) === visibleRowSize) {\n currPage++;\n const lastPage = pagination ? this.pagination.getLastPage() : -1;\n if (currPage <= lastPage) {\n this.handlePaginationData(currPage, this.state.sizePerPage);\n } else {\n return;\n }\n y = 0;\n } else {\n y++;\n }\n x = lastEditCell ? 1 : 0;\n } else if (x < 0) {\n x = visibleColumnSize - 1;\n if (y === 0) {\n currPage--;\n if (currPage > 0) {\n this.handlePaginationData(currPage, this.state.sizePerPage);\n } else {\n return;\n }\n y = this.state.sizePerPage - 1;\n } else {\n y--;\n }\n }\n this.setState(() => {\n return {\n x, y, currPage, reset: false\n };\n });\n }\n\n handleRowClick = (row, rowIndex, columnIndex, event) => {\n const { options, keyBoardNav } = this.props;\n if (options.onRowClick) {\n options.onRowClick(row, columnIndex, rowIndex, event);\n }\n if (keyBoardNav) {\n let { clickToNav } = typeof keyBoardNav === 'object' ? keyBoardNav : {};\n clickToNav = clickToNav === false ? clickToNav : true;\n if (clickToNav) {\n this.setState(() => {\n return {\n x: columnIndex,\n y: rowIndex,\n reset: false\n };\n });\n }\n }\n }\n\n handleRowDoubleClick = (row, event) => {\n if (this.props.options.onRowDoubleClick) {\n this.props.options.onRowDoubleClick(row, event);\n }\n }\n\n handleSelectAllRow = e => {\n const isSelected = e.currentTarget.checked;\n const keyField = this.store.getKeyField();\n const { selectRow: { onSelectAll, unselectable, selected, onlyUnselectVisible } } = this.props;\n let selectedRowKeys = onlyUnselectVisible ? this.state.selectedRowKeys : [];\n let result = true;\n let rows = this.store.get();\n\n // onlyUnselectVisible default is false, #1276\n if (!isSelected && !onlyUnselectVisible) {\n rows = this.store.getRowByKey(this.state.selectedRowKeys);\n }\n\n if (unselectable && unselectable.length > 0) {\n if (isSelected) {\n rows = rows.filter(r => {\n return unselectable.indexOf(r[keyField]) === -1 ||\n (selected && selected.indexOf(r[keyField]) !== -1);\n });\n } else {\n rows = rows.filter(r => unselectable.indexOf(r[keyField]) === -1);\n }\n }\n\n if (onSelectAll) {\n result = this.props.selectRow.onSelectAll(isSelected, rows);\n }\n\n if (typeof result == 'undefined' || result !== false) {\n if (isSelected) {\n if (Array.isArray(result)) {\n selectedRowKeys = result;\n } else {\n const currentRowKeys = rows.map(r => r[keyField]);\n // onlyUnselectVisible default is false, #1276\n if (onlyUnselectVisible) {\n selectedRowKeys = selectedRowKeys.concat(currentRowKeys);\n } else {\n selectedRowKeys = currentRowKeys;\n }\n }\n } else {\n if (unselectable && selected) {\n selectedRowKeys = selected.filter(r => unselectable.indexOf(r) > -1);\n } else if (onlyUnselectVisible) {\n const currentRowKeys = rows.map(r => r[keyField]);\n selectedRowKeys = selectedRowKeys.filter(k => currentRowKeys.indexOf(k) === -1);\n }\n }\n\n this.store.setSelectedRowKey(selectedRowKeys);\n this.setState(() => { return { selectedRowKeys, reset: false }; });\n }\n }\n\n handleShowOnlySelected = () => {\n this.store.ignoreNonSelected();\n const { pageStartIndex } = this.props.options;\n let result;\n if (this.props.pagination) {\n result = this.store.page(Util.getNormalizedPage(pageStartIndex), this.state.sizePerPage).get();\n } else {\n result = this.store.get();\n }\n this.setState(() => {\n return {\n data: result,\n reset: false,\n currPage: Util.getFirstPage(pageStartIndex)\n };\n });\n }\n\n handleSelectRow = (row, isSelected, e, rowIndex) => {\n let result = true;\n let currSelected = this.store.getSelectedRowKeys();\n const rowKey = row[ this.store.getKeyField() ];\n const { selectRow } = this.props;\n if (selectRow.onSelect) {\n result = selectRow.onSelect(row, isSelected, e, rowIndex);\n }\n\n if (typeof result === 'undefined' || result !== false) {\n if (selectRow.mode === Const.ROW_SELECT_SINGLE) {\n currSelected = isSelected ? [ rowKey ] : [];\n } else {\n if (isSelected) {\n currSelected.push(rowKey);\n } else {\n currSelected = currSelected.filter(key => rowKey !== key);\n }\n }\n\n this.store.setSelectedRowKey(currSelected);\n this.setState(() => {\n return {\n selectedRowKeys: currSelected,\n reset: false\n };\n });\n }\n }\n\n handleEditCell = (newVal, rowIndex, colIndex) => {\n const { beforeSaveCell } = this.props.cellEdit;\n const columns = this.getColumnsDescription(this.props);\n const fieldName = columns[colIndex].name;\n\n const invalid = () => {\n this.setState(() => {\n return {\n data: this.store.get(),\n reset: false\n };\n });\n return;\n };\n\n if (beforeSaveCell) {\n const beforeSaveCellCB = result => {\n this.body.cancelEditCell();\n if (result || result === undefined) {\n this.editCell(newVal, rowIndex, colIndex);\n } else {\n invalid();\n }\n };\n const props = { rowIndex, colIndex };\n const isValid = beforeSaveCell(this.state.data[rowIndex], fieldName, newVal, beforeSaveCellCB, props);\n if (isValid === false && typeof isValid !== 'undefined') {\n return invalid();\n } else if (isValid === Const.AWAIT_BEFORE_CELL_EDIT) {\n /* eslint consistent-return: 0 */\n return isValid;\n }\n }\n this.editCell(newVal, rowIndex, colIndex);\n }\n\n editCell(newVal, rowIndex, colIndex) {\n const { onCellEdit } = this.props.options;\n const { afterSaveCell } = this.props.cellEdit;\n const columns = this.getColumnsDescription(this.props);\n const fieldName = columns[colIndex].name;\n const props = { rowIndex, colIndex };\n if (onCellEdit) {\n newVal = onCellEdit(this.state.data[rowIndex], fieldName, newVal);\n }\n\n if (this.allowRemote(Const.REMOTE_CELL_EDIT)) {\n if (afterSaveCell) {\n afterSaveCell(this.state.data[rowIndex], fieldName, newVal, props);\n }\n return;\n }\n\n const result = this.store.edit(newVal, rowIndex, fieldName).get();\n this.setState(() => {\n return {\n data: result,\n reset: false\n };\n });\n\n if (afterSaveCell) {\n afterSaveCell(this.state.data[rowIndex], fieldName, newVal, props);\n }\n }\n\n handleAddRowAtBegin(newObj) {\n try {\n this.store.addAtBegin(newObj);\n } catch (e) {\n return e;\n }\n this._handleAfterAddingRow(newObj, true);\n }\n\n handleAddRow = newObj => {\n let isAsync = false;\n const { onAddRow } = this.props.options;\n\n const afterHandleAddRow = errMsg => {\n if (isAsync) {\n this.toolbar.afterHandleSaveBtnClick(errMsg);\n } else {\n return errMsg;\n }\n };\n\n const afterAddRowCB = errMsg => {\n if (typeof errMsg !== 'undefined' && errMsg !== '') return afterHandleAddRow(errMsg);\n if (this.allowRemote(Const.REMOTE_INSERT_ROW)) {\n if (this.props.options.afterInsertRow) {\n this.props.options.afterInsertRow(newObj);\n }\n return afterHandleAddRow();\n }\n\n try {\n this.store.add(newObj);\n } catch (e) {\n return afterHandleAddRow(e.message);\n }\n this._handleAfterAddingRow(newObj, false);\n return afterHandleAddRow();\n };\n\n if (onAddRow) {\n const colInfos = this.store.getColInfos();\n const errMsg = onAddRow(newObj, colInfos, afterAddRowCB);\n\n if (errMsg !== '' && errMsg !== false) {\n return errMsg;\n } else if (typeof errMsg === 'undefined') {\n return afterAddRowCB();\n } else {\n isAsync = true;\n return !isAsync;\n }\n } else {\n return afterAddRowCB();\n }\n }\n\n getSizePerPage() {\n return this.state.sizePerPage;\n }\n\n getCurrentPage() {\n return this.state.currPage;\n }\n\n getTableDataIgnorePaging() {\n return this.store.getCurrentDisplayData();\n }\n\n getPageByRowKey = rowKey => {\n const { sizePerPage } = this.state;\n const currentData = this.store.getCurrentDisplayData();\n const keyField = this.store.getKeyField();\n const result = currentData.findIndex((x) => x[ keyField ] === rowKey);\n if (result > -1) {\n return parseInt((result / sizePerPage), 10) + 1;\n } else {\n return result;\n }\n }\n\n handleDropRow = rowKeys => {\n const dropRowKeys = rowKeys ? rowKeys : this.store.getSelectedRowKeys();\n // add confirm before the delete action if that option is set.\n if (dropRowKeys && dropRowKeys.length > 0) {\n if (this.props.options.handleConfirmDeleteRow) {\n this.props.options.handleConfirmDeleteRow(() => {\n this.deleteRow(dropRowKeys);\n }, dropRowKeys);\n } else if (confirm('Are you sure you want to delete?')) {\n this.deleteRow(dropRowKeys);\n }\n }\n }\n\n deleteRow(dropRowKeys) {\n const dropRow = this.store.getRowByKey(dropRowKeys);\n const { onDeleteRow, afterDeleteRow, pageStartIndex } = this.props.options;\n\n if (onDeleteRow) {\n onDeleteRow(dropRowKeys, dropRow);\n }\n\n this.store.setSelectedRowKey([]); // clear selected row key\n\n if (this.allowRemote(Const.REMOTE_DROP_ROW)) {\n if (afterDeleteRow) {\n afterDeleteRow(dropRowKeys, dropRow);\n }\n return;\n }\n\n this.store.remove(dropRowKeys); // remove selected Row\n let result;\n if (this.props.pagination) {\n // debugger;\n const { sizePerPage } = this.state;\n const currLastPage = Math.ceil(this.store.getDataNum() / sizePerPage);\n let { currPage } = this.state;\n if (currPage > currLastPage) currPage = currLastPage;\n // console.log(Util.getNormalizedPage(currPage));\n result = this.store.page(Util.getNormalizedPage(pageStartIndex, currPage), sizePerPage).get();\n this.setState(() => {\n return {\n data: result,\n selectedRowKeys: this.store.getSelectedRowKeys(),\n currPage,\n reset: false\n };\n });\n } else {\n result = this.store.get();\n this.setState(() => {\n return {\n data: result,\n reset: false,\n selectedRowKeys: this.store.getSelectedRowKeys()\n };\n });\n }\n if (afterDeleteRow) {\n afterDeleteRow(dropRowKeys, dropRow);\n }\n }\n\n handleFilterData = filterObj => {\n const { autoCollapse: { filter }, options } = this.props;\n const { onFilterChange, pageStartIndex } = options;\n if (onFilterChange) {\n const colInfos = this.store.getColInfos();\n onFilterChange(filterObj, colInfos);\n }\n\n this.setState(() => {\n const newState = {\n currPage: Util.getFirstPage(pageStartIndex),\n reset: false\n };\n if (filter) newState.expanding = [];\n return newState;\n });\n\n if (this.allowRemote(Const.REMOTE_FILTER)) {\n if (this.props.options.afterColumnFilter) {\n this.props.options.afterColumnFilter(filterObj, this.store.getDataIgnoringPagination());\n }\n return;\n }\n\n this.store.filter(filterObj);\n\n const sortList = this.store.getSortInfo();\n\n if (sortList.length > 0) {\n this.store.sort();\n }\n\n let result;\n\n if (this.props.pagination) {\n const { sizePerPage } = this.state;\n result = this.store.page(Util.getNormalizedPage(pageStartIndex), sizePerPage).get();\n } else {\n result = this.store.get();\n }\n if (this.props.options.afterColumnFilter) {\n this.props.options.afterColumnFilter(filterObj,\n this.store.getDataIgnoringPagination());\n }\n this.setState(() => {\n return {\n data: result,\n reset: false\n };\n });\n }\n\n handleExportCSV = () => {\n let result = {};\n\n let { csvFileName } = this.props;\n const { onExportToCSV, exportCSVSeparator, noAutoBOM, excludeCSVHeader } = this.props.options;\n if (onExportToCSV) {\n result = onExportToCSV();\n } else {\n result = this.store.getDataIgnoringPagination();\n }\n const separator = exportCSVSeparator || Const.DEFAULT_CSV_SEPARATOR;\n const keys = [];\n this.props.children.filter(_ => _ != null).map(function(column) {\n if (column.props.export === true ||\n (typeof column.props.export === 'undefined' &&\n column.props.hidden === false)) {\n keys.push({\n field: column.props.dataField,\n type: column.props.csvFieldType,\n format: column.props.csvFormat,\n extraData: column.props.csvFormatExtraData,\n header: column.props.csvHeader || column.props.dataField,\n row: Number(column.props.row) || 0,\n rowSpan: Number(column.props.rowSpan) || 1,\n colSpan: Number(column.props.colSpan) || 1\n });\n }\n });\n\n if (Util.isFunction(csvFileName)) {\n csvFileName = csvFileName();\n }\n\n exportCSVUtil(result, keys, csvFileName, separator, noAutoBOM, excludeCSVHeader);\n }\n\n handleSearch = searchText => {\n // Set search field if this function being called outside\n // but it's not necessary if calling fron inside.\n if (this.toolbar) {\n this.toolbar.setSearchInput(searchText);\n }\n const { autoCollapse: { search } } = this.props;\n const { onSearchChange, pageStartIndex } = this.props.options;\n if (onSearchChange) {\n const colInfos = this.store.getColInfos();\n onSearchChange(searchText, colInfos, this.props.multiColumnSearch);\n }\n\n this.setState(() => {\n const newState = {\n currPage: Util.getFirstPage(pageStartIndex),\n reset: false\n };\n if (search) newState.expanding = [];\n return newState;\n });\n\n if (this.allowRemote(Const.REMOTE_SEARCH)) {\n if (this.props.options.afterSearch) {\n this.props.options.afterSearch(searchText, this.store.getDataIgnoringPagination());\n }\n return;\n }\n\n\n this.store.search(searchText);\n\n const sortList = this.store.getSortInfo();\n\n if (sortList.length > 0) {\n this.store.sort();\n }\n\n let result;\n if (this.props.pagination) {\n const { sizePerPage } = this.state;\n result = this.store.page(Util.getNormalizedPage(pageStartIndex), sizePerPage).get();\n } else {\n result = this.store.get();\n }\n if (this.props.options.afterSearch) {\n this.props.options.afterSearch(searchText,\n this.store.getDataIgnoringPagination());\n }\n this.setState(() => {\n return {\n data: result,\n reset: false\n };\n });\n }\n\n renderPagination() {\n if (this.props.pagination) {\n let dataSize;\n if (this.allowRemote(Const.REMOTE_PAGE)) {\n dataSize = this.props.fetchInfo.dataTotalSize;\n } else {\n dataSize = this.store.getDataNum();\n }\n const { options } = this.props;\n const withFirstAndLast = options.withFirstAndLast === undefined ? true : options.withFirstAndLast;\n if (Math.ceil(dataSize / this.state.sizePerPage) <= 1 &&\n this.props.ignoreSinglePage) return null;\n return (\n \n
this.pagination = node }\n version={ this.props.version }\n withFirstAndLast={ withFirstAndLast }\n alwaysShowAllBtns={ options.alwaysShowAllBtns }\n currPage={ this.state.currPage }\n changePage={ this.handlePaginationData }\n sizePerPage={ this.state.sizePerPage }\n sizePerPageList={ options.sizePerPageList || Const.SIZE_PER_PAGE_LIST }\n pageStartIndex={ options.pageStartIndex }\n paginationShowsTotal={ options.paginationShowsTotal }\n paginationSize={ options.paginationSize || Const.PAGINATION_SIZE }\n dataSize={ dataSize }\n onSizePerPageList={ options.onSizePerPageList }\n prePage={ options.prePage || Const.PRE_PAGE }\n nextPage={ options.nextPage || Const.NEXT_PAGE }\n firstPage={ options.firstPage || Const.FIRST_PAGE }\n lastPage={ options.lastPage || Const.LAST_PAGE }\n prePageTitle={ options.prePageTitle || Const.PRE_PAGE_TITLE }\n nextPageTitle={ options.nextPageTitle || Const.NEXT_PAGE_TITLE }\n firstPageTitle={ options.firstPageTitle || Const.FIRST_PAGE_TITLE }\n lastPageTitle={ options.lastPageTitle || Const.LAST_PAGE_TITLE }\n hideSizePerPage={ options.hideSizePerPage }\n sizePerPageDropDown={ options.sizePerPageDropDown }\n hidePageListOnlyOnePage={ options.hidePageListOnlyOnePage }\n paginationPanel={ options.paginationPanel }\n keepSizePerPageState={ options.keepSizePerPageState }\n open={ false }/>\n \n );\n }\n return null;\n }\n\n renderToolBar() {\n const { exportCSV, selectRow, insertRow, deleteRow, search, children, keyField } = this.props;\n const enableShowOnlySelected = selectRow && selectRow.showOnlySelected;\n const print = typeof this.props.options.printToolBar === 'undefined' ?\n true : this.props.options.printToolBar;\n if (enableShowOnlySelected\n || insertRow\n || deleteRow\n || search\n || exportCSV\n || this.props.options.searchPanel\n || this.props.options.btnGroup\n || this.props.options.toolBar) {\n let columns;\n if (Array.isArray(children)) {\n columns = children.filter(_ => _ != null).map((column, r) => {\n if (!column) return;\n const { props } = column;\n const isKey = props.isKey || keyField === props.dataField;\n return {\n isKey,\n name: props.headerText || props.children,\n field: props.dataField,\n hiddenOnInsert: props.hiddenOnInsert,\n keyValidator: props.keyValidator,\n customInsertEditor: props.customInsertEditor,\n // when you want same auto generate value and not allow edit, example ID field\n autoValue: props.autoValue || false,\n // for create editor, no params for column.editable() indicate that editor for new row\n editable: props.editable && (Util.isFunction(props.editable === 'function')) ? props.editable() : props.editable,\n format: props.dataFormat ? function(value) {\n return props.dataFormat(value, null, props.formatExtraData, r).replace(/<.*?>/g, '');\n } : false\n };\n });\n } else {\n columns = [ {\n name: children.props.headerText || children.props.children,\n field: children.props.dataField,\n editable: children.props.editable,\n customInsertEditor: children.props.customInsertEditor,\n hiddenOnInsert: children.props.hiddenOnInsert,\n keyValidator: children.props.keyValidator\n } ];\n }\n return (\n \n this.toolbar = node }\n version={ this.props.version }\n defaultSearch={ this.props.options.defaultSearch }\n clearSearch={ this.props.options.clearSearch }\n searchPosition={ this.props.options.searchPosition }\n searchDelayTime={ this.props.options.searchDelayTime }\n enableInsert={ insertRow }\n enableDelete={ deleteRow }\n enableSearch={ search }\n enableExportCSV={ exportCSV }\n enableShowOnlySelected={ enableShowOnlySelected }\n columns={ columns }\n searchPlaceholder={ this.props.searchPlaceholder }\n exportCSVText={ this.props.options.exportCSVText }\n insertText={ this.props.options.insertText }\n deleteText={ this.props.options.deleteText }\n saveText= { this.props.options.saveText }\n closeText= { this.props.options.closeText }\n ignoreEditable={ this.props.options.ignoreEditable }\n onAddRow={ this.handleAddRow }\n onDropRow={ this.handleDropRow }\n onSearch={ this.handleSearch }\n onExportCSV={ this.handleExportCSV }\n onShowOnlySelected={ this.handleShowOnlySelected }\n insertModalHeader={ this.props.options.insertModalHeader }\n insertModalFooter={ this.props.options.insertModalFooter }\n insertModalBody={ this.props.options.insertModalBody }\n insertModal={ this.props.options.insertModal }\n insertBtn={ this.props.options.insertBtn }\n deleteBtn={ this.props.options.deleteBtn }\n showSelectedOnlyBtn={ this.props.options.showSelectedOnlyBtn }\n exportCSVBtn={ this.props.options.exportCSVBtn }\n clearSearchBtn={ this.props.options.clearSearchBtn }\n searchField={ this.props.options.searchField }\n searchPanel={ this.props.options.searchPanel }\n btnGroup={ this.props.options.btnGroup }\n toolBar={ this.props.options.toolBar }\n reset={ this.state.reset }\n isValidKey={ this.store.isValidKey }\n insertFailIndicator={ this.props.options.insertFailIndicator || Const.INSERT_FAIL_INDICATOR } />\n
\n );\n } else {\n return null;\n }\n }\n\n renderTableFilter(columns) {\n if (this.props.columnFilter) {\n return (\n \n );\n } else {\n return null;\n }\n }\n\n renderTableFooter(footerData, footerFormatterReturnData, columns, colGroups) {\n if (this.props.footer) {\n let hideSelectColumn = true;\n const { mode } = this.props.selectRow;\n const isSelectRowDefined = Util.isSelectRowDefined(mode);\n if (isSelectRowDefined) {\n hideSelectColumn = this.props.selectRow.hideSelectColumn;\n }\n return (\n this.footer = node }\n columns={ columns }\n colGroups={ colGroups }\n footerFormatterReturnData={ footerFormatterReturnData }\n tableFooterClass={ this.props.tableFooterClass }\n style={ this.props.headerStyle }\n hideSelectColumn={ hideSelectColumn }\n expandColumnVisible={ this.props.expandColumnOptions.expandColumnVisible }\n bordered={ this.props.bordered }\n condensed={ this.props.condensed }\n isFiltered={ this.filter ? true : false }\n showStickyColumn={ this.props.showStickyColumn }>\n { footerData }\n \n );\n }\n return null;\n }\n\n _scrollTop = () => {\n const { scrollTop } = this.props;\n if (scrollTop === Const.SCROLL_TOP) {\n this.body.container.scrollTop = 0;\n } else if (scrollTop === Const.SCROLL_BOTTOM) {\n this.body.container.scrollTop = this.body.container.scrollHeight;\n } else if (typeof scrollTop === 'number' && !isNaN(scrollTop)) {\n this.body.container.scrollTop = scrollTop;\n }\n }\n _scrollHeader = (e) => {\n this.header.container.scrollLeft = e.currentTarget.scrollLeft;\n }\n\n _scrollFooter = (e) => {\n if (this.props.footer) {\n this.footer.container.scrollLeft = e.currentTarget.scrollLeft;\n }\n }\n\n _adjustTable() {\n this._adjustHeight();\n if (!this.props.printable) {\n this._adjustHeaderWidth();\n }\n }\n\n _adjustHeaderWidth() {\n const header = this.header.getHeaderColGrouop();\n const tbody = this.body.tbody;\n const bodyHeader = this.body.getHeaderColGrouop();\n const firstRow = tbody.childNodes[0];\n const isScroll = tbody.parentNode.getBoundingClientRect().height >\n tbody.parentNode.parentNode.getBoundingClientRect().height;\n\n const scrollBarWidth = isScroll ? Util.getScrollBarWidth() : 0;\n if (firstRow && this.store.getDataNum()) {\n if (isScroll || this.isVerticalScroll !== isScroll) {\n const cells = firstRow.childNodes;\n for (let i = 0; i < cells.length; i++) {\n const cell = cells[i];\n const computedStyle = window.getComputedStyle(cell);\n let width = parseFloat(computedStyle.width.replace('px', ''));\n if (this.isIE) {\n const paddingLeftWidth = parseFloat(computedStyle.paddingLeft.replace('px', ''));\n const paddingRightWidth = parseFloat(computedStyle.paddingRight.replace('px', ''));\n const borderRightWidth = parseFloat(computedStyle.borderRightWidth.replace('px', ''));\n const borderLeftWidth = parseFloat(computedStyle.borderLeftWidth.replace('px', ''));\n width = width + paddingLeftWidth + paddingRightWidth + borderRightWidth + borderLeftWidth;\n }\n const lastPadding = (cells.length - 1 === i ? scrollBarWidth : 0);\n if (width <= 0) {\n width = 120;\n cell.width = width + lastPadding + 'px';\n }\n const result = width + lastPadding + 'px';\n header[i].style.width = result;\n header[i].style.minWidth = result;\n if (cells.length - 1 === i) {\n bodyHeader[i].style.width = width + 'px';\n bodyHeader[i].style.minWidth = width + 'px';\n } else {\n bodyHeader[i].style.width = result;\n bodyHeader[i].style.minWidth = result;\n }\n }\n }\n } else {\n for (const i in bodyHeader) {\n if (bodyHeader.hasOwnProperty(i)) {\n const child = bodyHeader[i];\n if (child.style) {\n if (child.style.width) {\n header[i].style.width = child.style.width;\n }\n if (child.style.minWidth) {\n header[i].style.minWidth = child.style.minWidth;\n }\n }\n }\n }\n }\n this.isVerticalScroll = isScroll;\n }\n\n _adjustHeight() {\n const { height } = this.props;\n let { maxHeight } = this.props;\n if ((typeof height === 'number' && !isNaN(height)) || height.indexOf('%') === -1) {\n this.body.container.style.height =\n parseFloat(height, 10) - this.header.container.offsetHeight + 'px';\n }\n if (maxHeight) {\n maxHeight = typeof maxHeight === 'number' ?\n maxHeight :\n parseInt(maxHeight.replace('px', ''), 10);\n\n this.body.container.style.maxHeight =\n maxHeight - this.header.container.offsetHeight + 'px';\n }\n }\n\n _handleAfterAddingRow(newObj, atTheBeginning) {\n let result;\n if (this.props.pagination) {\n // if pagination is enabled and inserting row at the end,\n // change page to the last page\n // otherwise, change it to the first page\n const { sizePerPage } = this.state;\n\n if (atTheBeginning) {\n const { pageStartIndex } = this.props.options;\n result = this.store.page(Util.getNormalizedPage(pageStartIndex), sizePerPage).get();\n this.setState(() => {\n return {\n data: result,\n currPage: Util.getFirstPage(pageStartIndex),\n reset: false\n };\n });\n } else {\n const currLastPage = Math.ceil(this.store.getDataNum() / sizePerPage);\n result = this.store.page(currLastPage, sizePerPage).get();\n this.setState(() => {\n return {\n data: result,\n currPage: currLastPage,\n reset: false\n };\n });\n }\n } else {\n result = this.store.get();\n this.setState(() => {\n return {\n data: result,\n reset: false\n };\n });\n }\n\n if (this.props.options.afterInsertRow) {\n this.props.options.afterInsertRow(newObj);\n }\n }\n}\n\nBootstrapTable.propTypes = {\n keyField: PropTypes.string,\n height: PropTypes.oneOfType([ PropTypes.string, PropTypes.number ]),\n maxHeight: PropTypes.oneOfType([ PropTypes.string, PropTypes.number ]),\n data: PropTypes.oneOfType([ PropTypes.array, PropTypes.object ]),\n version: PropTypes.string, // bootstrap version\n remote: PropTypes.oneOfType([ PropTypes.bool, PropTypes.func ]), // remote data, default is false\n replace: PropTypes.oneOfType([ PropTypes.bool, PropTypes.func ]),\n scrollTop: PropTypes.oneOfType([ PropTypes.string, PropTypes.number ]),\n striped: PropTypes.bool,\n bordered: PropTypes.bool,\n hover: PropTypes.bool,\n condensed: PropTypes.bool,\n pagination: PropTypes.bool,\n printable: PropTypes.bool,\n withoutTabIndex: PropTypes.bool,\n keyBoardNav: PropTypes.oneOfType([ PropTypes.bool, PropTypes.object ]),\n searchPlaceholder: PropTypes.string,\n selectRow: PropTypes.shape({\n mode: PropTypes.oneOf([\n Const.ROW_SELECT_NONE,\n Const.ROW_SELECT_SINGLE,\n Const.ROW_SELECT_MULTI\n ]),\n customComponent: PropTypes.func,\n bgColor: PropTypes.oneOfType([ PropTypes.string, PropTypes.func ]),\n selected: PropTypes.array,\n onSelect: PropTypes.func,\n onSelectAll: PropTypes.func,\n clickToSelect: PropTypes.bool,\n hideSelectColumn: PropTypes.bool,\n clickToSelectAndEditCell: PropTypes.bool,\n clickToExpand: PropTypes.bool,\n showOnlySelected: PropTypes.bool,\n unselectable: PropTypes.array,\n columnWidth: PropTypes.oneOfType([ PropTypes.number, PropTypes.string ]),\n onlyUnselectVisible: PropTypes.bool\n }),\n cellEdit: PropTypes.shape({\n mode: PropTypes.string,\n blurToSave: PropTypes.bool,\n blurToEscape: PropTypes.bool,\n beforeSaveCell: PropTypes.func,\n afterSaveCell: PropTypes.func,\n nonEditableRows: PropTypes.func\n }),\n insertRow: PropTypes.bool,\n deleteRow: PropTypes.bool,\n search: PropTypes.bool,\n multiColumnSearch: PropTypes.bool,\n strictSearch: PropTypes.bool,\n columnFilter: PropTypes.bool,\n trClassName: PropTypes.any,\n trStyle: PropTypes.any,\n tableStyle: PropTypes.object,\n containerStyle: PropTypes.object,\n headerStyle: PropTypes.object,\n bodyStyle: PropTypes.object,\n containerClass: PropTypes.string,\n tableContainerClass: PropTypes.string,\n headerContainerClass: PropTypes.string,\n bodyContainerClass: PropTypes.string,\n tableHeaderClass: PropTypes.string,\n tableBodyClass: PropTypes.string,\n tableFooterClass: PropTypes.string,\n options: PropTypes.shape({\n clearSearch: PropTypes.bool,\n sortName: PropTypes.oneOfType([ PropTypes.string, PropTypes.array ]),\n sortOrder: PropTypes.oneOfType([ PropTypes.string, PropTypes.array ]),\n defaultSortName: PropTypes.oneOfType([ PropTypes.string, PropTypes.array ]),\n defaultSortOrder: PropTypes.oneOfType([ PropTypes.string, PropTypes.array ]),\n sortIndicator: PropTypes.bool,\n afterTableComplete: PropTypes.func,\n afterDeleteRow: PropTypes.func,\n afterInsertRow: PropTypes.func,\n afterSearch: PropTypes.func,\n afterColumnFilter: PropTypes.func,\n onRowClick: PropTypes.func,\n onRowDoubleClick: PropTypes.func,\n page: PropTypes.number,\n pageStartIndex: PropTypes.number,\n paginationShowsTotal: PropTypes.oneOfType([ PropTypes.bool, PropTypes.func ]),\n sizePerPageList: PropTypes.array,\n sizePerPage: PropTypes.number,\n paginationSize: PropTypes.number,\n paginationPosition: PropTypes.oneOf([\n Const.PAGINATION_POS_TOP,\n Const.PAGINATION_POS_BOTTOM,\n Const.PAGINATION_POS_BOTH\n ]),\n toolbarPosition: PropTypes.oneOf([\n Const.TOOLBAR_POS_TOP,\n Const.TOOLBAR_POS_BOTTOM,\n Const.TOOLBAR_POS_BOTH\n ]),\n hideSizePerPage: PropTypes.bool,\n hidePageListOnlyOnePage: PropTypes.bool,\n alwaysShowAllBtns: PropTypes.bool,\n withFirstAndLast: PropTypes.bool,\n keepSizePerPageState: PropTypes.bool,\n onSortChange: PropTypes.func,\n onPageChange: PropTypes.func,\n onSizePerPageList: PropTypes.func,\n onFilterChange: PropTypes.func,\n onSearchChange: PropTypes.func,\n onAddRow: PropTypes.func,\n onExportToCSV: PropTypes.func,\n onCellEdit: PropTypes.func,\n noDataText: PropTypes.oneOfType([ PropTypes.string, PropTypes.object ]),\n withoutNoDataText: PropTypes.bool,\n handleConfirmDeleteRow: PropTypes.func,\n prePage: PropTypes.any,\n nextPage: PropTypes.any,\n firstPage: PropTypes.any,\n lastPage: PropTypes.any,\n prePageTitle: PropTypes.string,\n nextPageTitle: PropTypes.string,\n firstPageTitle: PropTypes.string,\n lastPageTitle: PropTypes.string,\n searchDelayTime: PropTypes.number,\n excludeCSVHeader: PropTypes.bool,\n exportCSVText: PropTypes.string,\n exportCSVSeparator: PropTypes.string,\n insertText: PropTypes.string,\n deleteText: PropTypes.string,\n saveText: PropTypes.string,\n closeText: PropTypes.string,\n ignoreEditable: PropTypes.bool,\n defaultSearch: PropTypes.string,\n insertModalHeader: PropTypes.func,\n insertModalBody: PropTypes.func,\n insertModalFooter: PropTypes.func,\n insertModal: PropTypes.func,\n insertBtn: PropTypes.func,\n deleteBtn: PropTypes.func,\n showSelectedOnlyBtn: PropTypes.func,\n exportCSVBtn: PropTypes.func,\n clearSearchBtn: PropTypes.func,\n searchField: PropTypes.func,\n searchPanel: PropTypes.func,\n btnGroup: PropTypes.func,\n toolBar: PropTypes.func,\n sizePerPageDropDown: PropTypes.func,\n paginationPanel: PropTypes.func,\n searchPosition: PropTypes.string,\n expandRowBgColor: PropTypes.string,\n expandBy: PropTypes.string,\n expanding: PropTypes.array,\n onExpand: PropTypes.func,\n onlyOneExpanding: PropTypes.bool,\n expandBodyClass: PropTypes.oneOfType([ PropTypes.string, PropTypes.func ]),\n expandParentClass: PropTypes.oneOfType([ PropTypes.string, PropTypes.func ]),\n beforeShowError: PropTypes.func,\n printToolBar: PropTypes.bool,\n insertFailIndicator: PropTypes.string,\n noAutoBOM: PropTypes.bool,\n expandAll: PropTypes.bool,\n hideRowOnExpand: PropTypes.bool\n }),\n fetchInfo: PropTypes.shape({\n dataTotalSize: PropTypes.number\n }),\n renderAlert: PropTypes.bool,\n exportCSV: PropTypes.bool,\n csvFileName: PropTypes.oneOfType([ PropTypes.string, PropTypes.func ]),\n ignoreSinglePage: PropTypes.bool,\n expandableRow: PropTypes.func,\n expandComponent: PropTypes.func,\n autoCollapse: PropTypes.shape({\n sort: PropTypes.bool,\n filter: PropTypes.bool,\n search: PropTypes.bool\n }),\n expandColumnOptions: PropTypes.shape({\n columnWidth: PropTypes.oneOfType([ PropTypes.number, PropTypes.string ]),\n expandColumnVisible: PropTypes.bool,\n expandColumnComponent: PropTypes.func,\n expandedColumnHeaderComponent: PropTypes.func,\n expandColumnBeforeSelectColumn: PropTypes.bool\n }),\n footer: PropTypes.bool\n};\nBootstrapTable.defaultProps = {\n version: '3',\n replace: false,\n scrollTop: undefined,\n expandComponent: undefined,\n expandableRow: undefined,\n expandColumnOptions: {\n expandColumnVisible: false,\n expandColumnComponent: undefined,\n expandedColumnHeaderComponent: undefined,\n expandColumnBeforeSelectColumn: true\n },\n height: '100%',\n maxHeight: undefined,\n striped: false,\n bordered: true,\n hover: false,\n condensed: false,\n pagination: false,\n printable: false,\n withoutTabIndex: false,\n keyBoardNav: false,\n searchPlaceholder: undefined,\n selectRow: {\n mode: Const.ROW_SELECT_NONE,\n bgColor: Const.ROW_SELECT_BG_COLOR,\n selected: [],\n onSelect: undefined,\n onSelectAll: undefined,\n clickToSelect: false,\n hideSelectColumn: false,\n clickToSelectAndEditCell: false,\n clickToExpand: false,\n showOnlySelected: false,\n unselectable: [],\n customComponent: undefined,\n onlyUnselectVisible: false\n },\n cellEdit: {\n mode: Const.CELL_EDIT_NONE,\n blurToSave: false,\n blurToEscape: false,\n beforeSaveCell: undefined,\n afterSaveCell: undefined,\n nonEditableRows: undefined\n },\n insertRow: false,\n deleteRow: false,\n search: false,\n multiColumnSearch: false,\n strictSearch: undefined,\n multiColumnSort: 1,\n columnFilter: false,\n trClassName: '',\n trStyle: undefined,\n tableStyle: undefined,\n containerStyle: undefined,\n headerStyle: undefined,\n bodyStyle: undefined,\n containerClass: null,\n tableContainerClass: null,\n headerContainerClass: null,\n bodyContainerClass: null,\n tableHeaderClass: null,\n tableBodyClass: null,\n tableFooterClass: null,\n options: {\n clearSearch: false,\n sortName: undefined,\n sortOrder: undefined,\n defaultSortName: undefined,\n defaultSortOrder: undefined,\n sortIndicator: true,\n afterTableComplete: undefined,\n afterDeleteRow: undefined,\n afterInsertRow: undefined,\n afterSearch: undefined,\n afterColumnFilter: undefined,\n onRowClick: undefined,\n onRowDoubleClick: undefined,\n onMouseLeave: undefined,\n onMouseEnter: undefined,\n onRowMouseOut: undefined,\n onRowMouseOver: undefined,\n page: undefined,\n paginationShowsTotal: false,\n sizePerPageList: Const.SIZE_PER_PAGE_LIST,\n sizePerPage: undefined,\n paginationSize: Const.PAGINATION_SIZE,\n paginationPosition: Const.PAGINATION_POS_BOTTOM,\n toolbarPosition: Const.TOOLBAR_POS_TOP,\n hideSizePerPage: false,\n hidePageListOnlyOnePage: false,\n alwaysShowAllBtns: false,\n withFirstAndLast: true,\n keepSizePerPageState: false,\n onSizePerPageList: undefined,\n noDataText: undefined,\n withoutNoDataText: false,\n handleConfirmDeleteRow: undefined,\n prePage: Const.PRE_PAGE,\n nextPage: Const.NEXT_PAGE,\n firstPage: Const.FIRST_PAGE,\n lastPage: Const.LAST_PAGE,\n prePageTitle: Const.PRE_PAGE_TITLE,\n nextPageTitle: Const.NEXT_PAGE_TITLE,\n firstPageTitle: Const.FIRST_PAGE_TITLE,\n lastPageTitle: Const.LAST_PAGE_TITLE,\n pageStartIndex: 1,\n searchDelayTime: undefined,\n excludeCSVHeader: false,\n exportCSVText: Const.EXPORT_CSV_TEXT,\n exportCSVSeparator: Const.DEFAULT_CSV_SEPARATOR,\n insertText: Const.INSERT_BTN_TEXT,\n deleteText: Const.DELETE_BTN_TEXT,\n saveText: Const.SAVE_BTN_TEXT,\n closeText: Const.CLOSE_BTN_TEXT,\n ignoreEditable: false,\n defaultSearch: '',\n insertModalHeader: undefined,\n insertModalBody: undefined,\n insertModalFooter: undefined,\n insertModal: undefined,\n insertBtn: undefined,\n deleteBtn: undefined,\n showSelectedOnlyBtn: undefined,\n exportCSVBtn: undefined,\n clearSearchBtn: undefined,\n searchField: undefined,\n searchPanel: undefined,\n btnGroup: undefined,\n toolBar: undefined,\n sizePerPageDropDown: undefined,\n paginationPanel: undefined,\n searchPosition: 'right',\n expandRowBgColor: undefined,\n expandBy: Const.EXPAND_BY_ROW,\n expanding: [],\n onExpand: undefined,\n onlyOneExpanding: false,\n expandBodyClass: null,\n expandParentClass: null,\n beforeShowError: undefined,\n printToolBar: true,\n insertFailIndicator: Const.INSERT_FAIL_INDICATOR,\n noAutoBOM: true,\n expandAll: false,\n hideRowOnExpand: false\n },\n fetchInfo: {\n dataTotalSize: 0\n },\n renderAlert: true,\n exportCSV: false,\n csvFileName: 'spreadsheet.csv',\n ignoreSinglePage: false,\n autoCollapse: {\n sort: Const.AUTO_COLLAPSE_WHEN_SORT,\n filter: Const.AUTO_COLLAPSE_WHEN_FILTER,\n search: Const.AUTO_COLLAPSE_WHEN_SEARCH\n },\n footer: false\n};\n\nexport default BootstrapTable;\n\n\n\n// WEBPACK FOOTER //\n// src/BootstrapTable.js","module.exports = __WEBPACK_EXTERNAL_MODULE_2__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external {\"root\":\"React\",\"commonjs2\":\"react\",\"commonjs\":\"react\",\"amd\":\"react\"}\n// module id = 2\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var REACT_ELEMENT_TYPE = (typeof Symbol === 'function' &&\n Symbol.for &&\n Symbol.for('react.element')) ||\n 0xeac7;\n\n var isValidElement = function(object) {\n return typeof object === 'object' &&\n object !== null &&\n object.$$typeof === REACT_ELEMENT_TYPE;\n };\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(isValidElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/prop-types/index.js\n// module id = 3\n// module chunks = 0","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/process/browser.js\n// module id = 4\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar emptyFunction = require('fbjs/lib/emptyFunction');\nvar invariant = require('fbjs/lib/invariant');\nvar warning = require('fbjs/lib/warning');\nvar assign = require('object-assign');\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\nvar checkPropTypes = require('./checkPropTypes');\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n /* global Symbol */\n var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n /**\n * Returns the iterator method function contained on the iterable object.\n *\n * Be sure to invoke the function with the iterable as context:\n *\n * var iteratorFn = getIteratorFn(myIterable);\n * if (iteratorFn) {\n * var iterator = iteratorFn.call(myIterable);\n * ...\n * }\n *\n * @param {?object} maybeIterable\n * @return {?function}\n */\n function getIteratorFn(maybeIterable) {\n var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n }\n\n /**\n * Collection of methods that allow declaration and validation of props that are\n * supplied to React components. Example usage:\n *\n * var Props = require('ReactPropTypes');\n * var MyArticle = React.createClass({\n * propTypes: {\n * // An optional string prop named \"description\".\n * description: Props.string,\n *\n * // A required enum prop named \"category\".\n * category: Props.oneOf(['News','Photos']).isRequired,\n *\n * // A prop named \"dialog\" that requires an instance of Dialog.\n * dialog: Props.instanceOf(Dialog).isRequired\n * },\n * render: function() { ... }\n * });\n *\n * A more formal specification of how these methods are used:\n *\n * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n * decl := ReactPropTypes.{type}(.isRequired)?\n *\n * Each and every declaration produces a function with the same signature. This\n * allows the creation of custom validation functions. For example:\n *\n * var MyLink = React.createClass({\n * propTypes: {\n * // An optional string or URI prop named \"href\".\n * href: function(props, propName, componentName) {\n * var propValue = props[propName];\n * if (propValue != null && typeof propValue !== 'string' &&\n * !(propValue instanceof URI)) {\n * return new Error(\n * 'Expected a string or an URI for ' + propName + ' in ' +\n * componentName\n * );\n * }\n * }\n * },\n * render: function() {...}\n * });\n *\n * @internal\n */\n\n var ANONYMOUS = '<>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker,\n exact: createStrictShapeTypeChecker,\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message) {\n this.message = message;\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (process.env.NODE_ENV !== 'production') {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n invariant(\n false,\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n warning(\n false,\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `%s` prop on `%s`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.',\n propFullName,\n componentName\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunction.thatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOf, expected an instance of array.') : void 0;\n return emptyFunction.thatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (propValue.hasOwnProperty(key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n return emptyFunction.thatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n warning(\n false,\n 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n 'received %s at index %s.',\n getPostfixForTypeWarning(checker),\n i\n );\n return emptyFunction.thatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {\n return null;\n }\n }\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (!checker) {\n continue;\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createStrictShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n // We need to check all keys in case some are required but missing from\n // props.\n var allKeys = assign({}, props[propName], shapeTypes);\n for (var key in allKeys) {\n var checker = shapeTypes[key];\n if (!checker) {\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n );\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/prop-types/factoryWithTypeCheckers.js\n// module id = 5\n// module chunks = 0","\"use strict\";\n\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nfunction makeEmptyFunction(arg) {\n return function () {\n return arg;\n };\n}\n\n/**\n * This function accepts and discards inputs; it has no side effects. This is\n * primarily useful idiomatically for overridable function endpoints which\n * always need to be callable, since JS lacks a null-call idiom ala Cocoa.\n */\nvar emptyFunction = function emptyFunction() {};\n\nemptyFunction.thatReturns = makeEmptyFunction;\nemptyFunction.thatReturnsFalse = makeEmptyFunction(false);\nemptyFunction.thatReturnsTrue = makeEmptyFunction(true);\nemptyFunction.thatReturnsNull = makeEmptyFunction(null);\nemptyFunction.thatReturnsThis = function () {\n return this;\n};\nemptyFunction.thatReturnsArgument = function (arg) {\n return arg;\n};\n\nmodule.exports = emptyFunction;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/fbjs/lib/emptyFunction.js\n// module id = 6\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n'use strict';\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar validateFormat = function validateFormat(format) {};\n\nif (process.env.NODE_ENV !== 'production') {\n validateFormat = function validateFormat(format) {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n };\n}\n\nfunction invariant(condition, format, a, b, c, d, e, f) {\n validateFormat(format);\n\n if (!condition) {\n var error;\n if (format === undefined) {\n error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.');\n } else {\n var args = [a, b, c, d, e, f];\n var argIndex = 0;\n error = new Error(format.replace(/%s/g, function () {\n return args[argIndex++];\n }));\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n throw error;\n }\n}\n\nmodule.exports = invariant;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/fbjs/lib/invariant.js\n// module id = 7\n// module chunks = 0","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n'use strict';\n\nvar emptyFunction = require('./emptyFunction');\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar warning = emptyFunction;\n\nif (process.env.NODE_ENV !== 'production') {\n var printWarning = function printWarning(format) {\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n var argIndex = 0;\n var message = 'Warning: ' + format.replace(/%s/g, function () {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n\n warning = function warning(condition, format) {\n if (format === undefined) {\n throw new Error('`warning(condition, format, ...args)` requires a warning ' + 'message argument');\n }\n\n if (format.indexOf('Failed Composite propType: ') === 0) {\n return; // Ignore CompositeComponent proptype check.\n }\n\n if (!condition) {\n for (var _len2 = arguments.length, args = Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {\n args[_key2 - 2] = arguments[_key2];\n }\n\n printWarning.apply(undefined, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/fbjs/lib/warning.js\n// module id = 8\n// module chunks = 0","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/object-assign/index.js\n// module id = 9\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/prop-types/lib/ReactPropTypesSecret.js\n// module id = 10\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nif (process.env.NODE_ENV !== 'production') {\n var invariant = require('fbjs/lib/invariant');\n var warning = require('fbjs/lib/warning');\n var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n var loggedTypeFailures = {};\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n if (process.env.NODE_ENV !== 'production') {\n for (var typeSpecName in typeSpecs) {\n if (typeSpecs.hasOwnProperty(typeSpecName)) {\n var error;\n // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n invariant(typeof typeSpecs[typeSpecName] === 'function', '%s: %s type `%s` is invalid; it must be a function, usually from ' + 'the `prop-types` package, but received `%s`.', componentName || 'React class', location, typeSpecName, typeof typeSpecs[typeSpecName]);\n error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n } catch (ex) {\n error = ex;\n }\n warning(!error || error instanceof Error, '%s: type specification of %s `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error);\n if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error.message] = true;\n\n var stack = getStack ? getStack() : '';\n\n warning(false, 'Failed %s type: %s%s', location, error.message, stack != null ? stack : '');\n }\n }\n }\n }\n}\n\nmodule.exports = checkPropTypes;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/prop-types/checkPropTypes.js\n// module id = 11\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar emptyFunction = require('fbjs/lib/emptyFunction');\nvar invariant = require('fbjs/lib/invariant');\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n invariant(\n false,\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim\n };\n\n ReactPropTypes.checkPropTypes = emptyFunction;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/prop-types/factoryWithThrowingShims.js\n// module id = 12\n// module chunks = 0","/*!\n Copyright (c) 2016 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tclasses.push(classNames.apply(null, arg));\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/classnames/index.js\n// module id = 13\n// module chunks = 0","module.exports = require('./dist/SAlert');\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-s-alert/index.js\n// module id = 14\n// module chunks = 0","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['exports', 'react', './SAlertContent', 'prop-types', './s-alert-parts/s-alert-store', './s-alert-parts/s-alert-tools', './s-alert-parts/s-alert-data-prep'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(exports, require('react'), require('./SAlertContent'), require('prop-types'), require('./s-alert-parts/s-alert-store'), require('./s-alert-parts/s-alert-tools'), require('./s-alert-parts/s-alert-data-prep'));\n } else {\n var mod = {\n exports: {}\n };\n factory(mod.exports, global.react, global.SAlertContent, global.propTypes, global.sAlertStore, global.sAlertTools, global.sAlertDataPrep);\n global.SAlert = mod.exports;\n }\n})(this, function (exports, _react, _SAlertContent, _propTypes, _sAlertStore, _sAlertTools, _sAlertDataPrep) {\n 'use strict';\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n\n var _react2 = _interopRequireDefault(_react);\n\n var _SAlertContent2 = _interopRequireDefault(_SAlertContent);\n\n var _propTypes2 = _interopRequireDefault(_propTypes);\n\n var _sAlertStore2 = _interopRequireDefault(_sAlertStore);\n\n var _sAlertTools2 = _interopRequireDefault(_sAlertTools);\n\n var _sAlertDataPrep2 = _interopRequireDefault(_sAlertDataPrep);\n\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n }\n\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n\n var _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n }();\n\n function _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n }\n\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n }\n\n var _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n var insertFunc = function insertFunc(msg, data, condition) {\n var id = _sAlertTools2.default.randomId();\n _sAlertStore2.default.dispatch({\n type: 'INSERT',\n data: _extends({}, data, {\n id: id,\n condition: condition,\n message: msg\n })\n });\n return id;\n };\n\n var SAlert = function (_React$Component) {\n _inherits(SAlert, _React$Component);\n\n function SAlert(props) {\n _classCallCheck(this, SAlert);\n\n var _this = _possibleConstructorReturn(this, (SAlert.__proto__ || Object.getPrototypeOf(SAlert)).call(this, props));\n\n _this.state = {\n dataRight: [],\n dataLeft: [],\n dataTop: [],\n dataBottom: []\n };\n return _this;\n }\n\n _createClass(SAlert, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n var storeStateLeft = void 0;\n var storeStateRight = void 0;\n var storeStateTop = void 0;\n var storeStateBottom = void 0;\n\n var addToStoreRight = function addToStoreRight() {\n requestAnimationFrame(function () {\n return requestAnimationFrame(function () {\n var length = void 0;\n storeStateRight = (0, _sAlertDataPrep2.default)('right') || [];\n length = storeStateRight.length;\n if (_this2.props.stack && _this2.props.stack.limit && length > _this2.props.stack.limit) {\n var id = storeStateRight[0].id;\n _sAlertStore2.default.dispatch({ type: 'REMOVE', data: { id: id } });\n storeStateRight = (0, _sAlertDataPrep2.default)('right') || [];\n }\n _this2.setState({ dataRight: storeStateRight });\n });\n });\n };\n this.unsubStoreRight = _sAlertStore2.default.subscribe(addToStoreRight);\n\n var addToStoreLeft = function addToStoreLeft() {\n requestAnimationFrame(function () {\n return requestAnimationFrame(function () {\n var length = void 0;\n storeStateLeft = (0, _sAlertDataPrep2.default)('left') || [];\n length = storeStateLeft.length;\n if (_this2.props.stack && _this2.props.stack.limit && length > _this2.props.stack.limit) {\n var id = storeStateLeft[0].id;\n _sAlertStore2.default.dispatch({ type: 'REMOVE', data: { id: id } });\n storeStateLeft = (0, _sAlertDataPrep2.default)('left') || [];\n }\n _this2.setState({ dataLeft: storeStateLeft });\n });\n });\n };\n this.unsubStoreLeft = _sAlertStore2.default.subscribe(addToStoreLeft);\n\n var addToStoreTop = function addToStoreTop() {\n requestAnimationFrame(function () {\n return requestAnimationFrame(function () {\n var length = void 0;\n storeStateTop = (0, _sAlertDataPrep2.default)('full-top') || [];\n length = storeStateTop.length;\n if (_this2.props.stack && _this2.props.stack.limit && length > _this2.props.stack.limit) {\n var id = storeStateTop[0].id;\n _sAlertStore2.default.dispatch({ type: 'REMOVE', data: { id: id } });\n storeStateTop = (0, _sAlertDataPrep2.default)('full-top') || [];\n }\n _this2.setState({ dataTop: storeStateTop });\n });\n });\n };\n this.unsubStoreTop = _sAlertStore2.default.subscribe(addToStoreTop);\n\n var addToStoreBottom = function addToStoreBottom() {\n requestAnimationFrame(function () {\n return requestAnimationFrame(function () {\n var length = void 0;\n storeStateBottom = (0, _sAlertDataPrep2.default)('full-bottom') || [];\n length = storeStateBottom.length;\n if (_this2.props.stack && _this2.props.stack.limit && length > _this2.props.stack.limit) {\n var id = storeStateBottom[0].id;\n _sAlertStore2.default.dispatch({ type: 'REMOVE', data: { id: id } });\n storeStateBottom = (0, _sAlertDataPrep2.default)('full-bottom') || [];\n }\n _this2.setState({ dataBottom: storeStateBottom });\n });\n });\n };\n this.unsubStoreBottom = _sAlertStore2.default.subscribe(addToStoreBottom);\n\n // set up global config from global SAlert props\n // only stuff needed for getAlertData\n var globalConfig = {\n contentTemplate: this.props.contentTemplate,\n offset: this.props.offset,\n message: this.props.message,\n stack: this.props.stack,\n html: this.props.html,\n customFields: this.props.customFields,\n position: this.props.position || 'top-right'\n };\n _sAlertTools2.default.setGlobalConfig(globalConfig);\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n this.unsubStoreTop();\n this.unsubStoreBottom();\n this.unsubStoreLeft();\n this.unsubStoreRight();\n }\n }, {\n key: 'render',\n value: function render() {\n var _this3 = this;\n\n var mapFunc = function mapFunc(alert, index) {\n var customKey = 'alert-key-' + alert.id + '-' + alert.position;\n var id = alert.id;\n var condition = _sAlertTools2.default.returnFirstDefined(alert.condition, 'info');\n var message = _sAlertTools2.default.returnFirstDefined(alert.message, _this3.props.message, '');\n var position = _sAlertTools2.default.returnFirstDefined(alert.position, _this3.props.position, 'top-right');\n var offset = _sAlertTools2.default.returnFirstDefined(alert.offset, _this3.props.offset, 0);\n var effect = _sAlertTools2.default.returnFirstDefined(alert.effect, _this3.props.effect);\n var boxPosition = alert.boxPosition;\n var beep = _sAlertTools2.default.returnFirstDefined(alert.beep, _this3.props.beep, false);\n var timeout = _sAlertTools2.default.returnFirstDefined(alert.timeout, _this3.props.timeout, 5000);\n var html = _sAlertTools2.default.returnFirstDefined(alert.html, _this3.props.html);\n var onClose = _sAlertTools2.default.returnFirstDefined(alert.onClose, _this3.props.onClose);\n var onShow = _sAlertTools2.default.returnFirstDefined(alert.onShow, _this3.props.onShow);\n var customFields = _sAlertTools2.default.returnFirstDefined(alert.customFields, _this3.props.customFields);\n var contentTemplate = _this3.props.contentTemplate;\n return _react2.default.createElement(_SAlertContent2.default, {\n key: customKey,\n id: id,\n customFields: customFields,\n condition: condition,\n message: message,\n position: position,\n effect: effect,\n boxPosition: boxPosition,\n beep: beep,\n timeout: timeout,\n html: html,\n onClose: onClose,\n onShow: onShow,\n contentTemplate: contentTemplate });\n };\n var sAlertElemsRight = this.state.dataRight.map(mapFunc);\n var sAlertElemsLeft = this.state.dataLeft.map(mapFunc);\n var sAlertElemsTop = this.state.dataTop.map(mapFunc);\n var sAlertElemsBottom = this.state.dataBottom.map(mapFunc);\n return _react2.default.createElement(\n 'div',\n { className: 's-alert-wrapper' },\n sAlertElemsRight,\n sAlertElemsLeft,\n sAlertElemsTop,\n sAlertElemsBottom\n );\n }\n }], [{\n key: 'info',\n value: function info(msg, data) {\n return insertFunc(msg, data, 'info');\n }\n }, {\n key: 'error',\n value: function error(msg, data) {\n return insertFunc(msg, data, 'error');\n }\n }, {\n key: 'warning',\n value: function warning(msg, data) {\n return insertFunc(msg, data, 'warning');\n }\n }, {\n key: 'success',\n value: function success(msg, data) {\n return insertFunc(msg, data, 'success');\n }\n }, {\n key: 'close',\n value: function close(id) {\n _sAlertStore2.default.dispatch({ type: 'REMOVE', data: { id: id } });\n }\n }, {\n key: 'closeAll',\n value: function closeAll() {\n _sAlertStore2.default.dispatch({ type: 'REMOVEALL' });\n }\n }]);\n\n return SAlert;\n }(_react2.default.Component);\n\n SAlert.propTypes = {\n message: _propTypes2.default.string,\n position: _propTypes2.default.string,\n offset: _propTypes2.default.number,\n stack: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.object]),\n effect: _propTypes2.default.string,\n beep: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object, _propTypes2.default.bool]),\n timeout: _propTypes2.default.oneOfType([_propTypes2.default.oneOf(['none']), _propTypes2.default.number]),\n html: _propTypes2.default.bool,\n onClose: _propTypes2.default.func,\n onShow: _propTypes2.default.func,\n customFields: _propTypes2.default.object,\n contentTemplate: _propTypes2.default.func\n };\n\n exports.default = SAlert;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-s-alert/dist/SAlert.js\n// module id = 15\n// module chunks = 0","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['exports', 'react', 'react-dom', 'prop-types', './s-alert-parts/s-alert-tools', './s-alert-parts/s-alert-store', './SAlertContentTmpl'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(exports, require('react'), require('react-dom'), require('prop-types'), require('./s-alert-parts/s-alert-tools'), require('./s-alert-parts/s-alert-store'), require('./SAlertContentTmpl'));\n } else {\n var mod = {\n exports: {}\n };\n factory(mod.exports, global.react, global.reactDom, global.propTypes, global.sAlertTools, global.sAlertStore, global.SAlertContentTmpl);\n global.SAlertContent = mod.exports;\n }\n})(this, function (exports, _react, _reactDom, _propTypes, _sAlertTools, _sAlertStore, _SAlertContentTmpl) {\n 'use strict';\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n\n var _react2 = _interopRequireDefault(_react);\n\n var _reactDom2 = _interopRequireDefault(_reactDom);\n\n var _propTypes2 = _interopRequireDefault(_propTypes);\n\n var _sAlertTools2 = _interopRequireDefault(_sAlertTools);\n\n var _sAlertStore2 = _interopRequireDefault(_sAlertStore);\n\n var _SAlertContentTmpl2 = _interopRequireDefault(_SAlertContentTmpl);\n\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n }\n\n var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n\n var _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n }();\n\n function _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n }\n\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n }\n\n var SAlertContent = function (_React$Component) {\n _inherits(SAlertContent, _React$Component);\n\n function SAlertContent(props) {\n _classCallCheck(this, SAlertContent);\n\n return _possibleConstructorReturn(this, (SAlertContent.__proto__ || Object.getPrototypeOf(SAlertContent)).call(this, props));\n }\n\n _createClass(SAlertContent, [{\n key: 'handleCloseAlert',\n value: function handleCloseAlert() {\n var closingTimeout = void 0;\n var alertId = this.props.id;\n var currentAlertElem = _reactDom2.default.findDOMNode(this);\n var animationClose = function animationClose() {\n currentAlertElem.style.display = 'none';\n _sAlertStore2.default.dispatch({ type: 'REMOVE', data: { id: alertId } });\n clearTimeout(closingTimeout);\n };\n if (document.hidden || document.webkitHidden || !currentAlertElem.classList.contains('s-alert-is-effect')) {\n _sAlertStore2.default.dispatch({ type: 'REMOVE', data: { id: alertId } });\n } else {\n currentAlertElem.classList.remove('s-alert-show');\n closingTimeout = setTimeout(function () {\n currentAlertElem.classList.add('s-alert-hide');\n }, 100);\n currentAlertElem.removeEventListener('webkitAnimationEnd', animationClose, false);\n currentAlertElem.removeEventListener('animationend', animationClose, false);\n currentAlertElem.addEventListener('webkitAnimationEnd', animationClose, false);\n currentAlertElem.addEventListener('animationend', animationClose, false);\n }\n // stop audio when closing\n this.alertAudio && this.alertAudio.load();\n }\n }, {\n key: 'componentWillMount',\n value: function componentWillMount() {\n var beep = this.props.beep;\n var condition = this.props.condition;\n if (beep && typeof beep === 'string') {\n this.alertAudio = new Audio(beep);\n this.alertAudio.load();\n this.alertAudio.play();\n }\n if (beep && (typeof beep === 'undefined' ? 'undefined' : _typeof(beep)) === 'object' && condition === 'info') {\n this.alertAudio = new Audio(beep.info);\n this.alertAudio.load();\n this.alertAudio.play();\n }\n if (beep && (typeof beep === 'undefined' ? 'undefined' : _typeof(beep)) === 'object' && condition === 'error') {\n this.alertAudio = new Audio(beep.error);\n this.alertAudio.load();\n this.alertAudio.play();\n }\n if (beep && (typeof beep === 'undefined' ? 'undefined' : _typeof(beep)) === 'object' && condition === 'success') {\n this.alertAudio = new Audio(beep.success);\n this.alertAudio.load();\n this.alertAudio.play();\n }\n if (beep && (typeof beep === 'undefined' ? 'undefined' : _typeof(beep)) === 'object' && condition === 'warning') {\n this.alertAudio = new Audio(beep.warning);\n this.alertAudio.load();\n this.alertAudio.play();\n }\n }\n }, {\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n if (typeof this.props.timeout === 'number') {\n this.closeTimer = setTimeout(function () {\n _this2.handleCloseAlert();\n }, this.props.timeout);\n }\n if (this.props.onShow) {\n this.props.onShow();\n }\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n if (this.closeTimer) {\n clearTimeout(this.closeTimer);\n }\n if (this.props.onClose) {\n this.props.onClose();\n }\n }\n }, {\n key: 'render',\n value: function render() {\n var classNames = 's-alert-box s-alert-' + this.props.condition + ' s-alert-' + this.props.position + ' ' + (this.props.effect ? 's-alert-is-effect s-alert-effect-' + this.props.effect : '') + ' s-alert-show';\n var message = this.props.html ? _react2.default.createElement('span', { dangerouslySetInnerHTML: { __html: this.props.message } }) : this.props.message;\n var styles = this.props.boxPosition ? _sAlertTools2.default.styleToObj(this.props.boxPosition) : {};\n var id = this.props.id;\n var handleClose = this.handleCloseAlert.bind(this);\n var contentTemplate = this.props.contentTemplate || _SAlertContentTmpl2.default;\n var customFields = this.props.customFields || {};\n\n return _react2.default.createElement(contentTemplate, { classNames: classNames, id: id, styles: styles, message: message, handleClose: handleClose, customFields: customFields });\n }\n }]);\n\n return SAlertContent;\n }(_react2.default.Component);\n\n SAlertContent.propTypes = {\n condition: _propTypes2.default.string.isRequired,\n message: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.node]),\n position: _propTypes2.default.string.isRequired,\n boxPosition: _propTypes2.default.string,\n id: _propTypes2.default.string.isRequired,\n effect: _propTypes2.default.string,\n beep: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object, _propTypes2.default.bool]),\n timeout: _propTypes2.default.oneOfType([_propTypes2.default.oneOf(['none']), _propTypes2.default.number]),\n html: _propTypes2.default.bool,\n onClose: _propTypes2.default.func,\n onShow: _propTypes2.default.func,\n customFields: _propTypes2.default.object,\n contentTemplate: _propTypes2.default.func\n };\n\n exports.default = SAlertContent;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-s-alert/dist/SAlertContent.js\n// module id = 16\n// module chunks = 0","module.exports = __WEBPACK_EXTERNAL_MODULE_17__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external {\"root\":\"ReactDOM\",\"commonjs2\":\"react-dom\",\"commonjs\":\"react-dom\",\"amd\":\"react-dom\"}\n// module id = 17\n// module chunks = 0","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['exports'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(exports);\n } else {\n var mod = {\n exports: {}\n };\n factory(mod.exports);\n global.sAlertTools = mod.exports;\n }\n})(this, function (exports) {\n 'use strict';\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n\n var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n\n var actualGlobalConfig = void 0;\n\n var sAlertTools = {\n randomId: function randomId() {\n return Math.random().toString(36).split('.')[1];\n },\n returnFirstDefined: function returnFirstDefined() {\n var value = void 0;\n var i = void 0;\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n for (i = 0; i < args.length; i++) {\n if (typeof args[i] !== 'undefined') {\n value = args[i];\n break;\n }\n }\n return value;\n },\n styleToObj: function styleToObj(input) {\n var result = {},\n i = void 0,\n entry = void 0,\n attributes = input && input.split(';').filter(Boolean);\n\n for (i = 0; i < attributes.length; i++) {\n entry = attributes[i].split(':');\n result[entry.splice(0, 1)[0].trim()] = entry.join(':').trim();\n }\n return result;\n },\n setGlobalConfig: function setGlobalConfig(config) {\n if ((typeof config === 'undefined' ? 'undefined' : _typeof(config)) === 'object') {\n actualGlobalConfig = config;\n }\n },\n getGlobalConfig: function getGlobalConfig() {\n return actualGlobalConfig;\n }\n };\n\n exports.default = sAlertTools;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-s-alert/dist/s-alert-parts/s-alert-tools.js\n// module id = 18\n// module chunks = 0","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['exports'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(exports);\n } else {\n var mod = {\n exports: {}\n };\n factory(mod.exports);\n global.sAlertStore = mod.exports;\n }\n})(this, function (exports) {\n 'use strict';\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n\n function _toConsumableArray(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n } else {\n return Array.from(arr);\n }\n }\n\n // custom simple store based on a awesome Redux library https://github.com/rackt/redux\n\n var createSAlertStore = function createSAlertStore(reducer) {\n var state = void 0;\n var listeners = [];\n var getState = function getState() {\n return state;\n };\n var dispatch = function dispatch(action) {\n state = reducer(state, action);\n listeners.forEach(function (listener) {\n return listener();\n });\n };\n var subscribe = function subscribe(listener) {\n listeners.push(listener);\n return function () {\n listeners = listeners.filter(function (l) {\n return l !== listener;\n });\n };\n };\n dispatch({});\n return {\n getState: getState, dispatch: dispatch, subscribe: subscribe\n };\n };\n\n var insert = function insert(state, action) {\n return [].concat(_toConsumableArray(state), [action.data]);\n };\n\n var remove = function remove(state, action) {\n var elemToRemoveArray = state.slice().filter(function (item) {\n return item.id === action.data.id;\n });\n if (Array.isArray(elemToRemoveArray)) {\n var elemToRemoveIndex = state.indexOf(elemToRemoveArray[0]);\n return [].concat(_toConsumableArray(state.slice(0, elemToRemoveIndex)), _toConsumableArray(state.slice(elemToRemoveIndex + 1)));\n }\n return state;\n };\n\n var alertsReducer = function alertsReducer() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var action = arguments[1];\n\n switch (action.type) {\n case 'INSERT':\n return insert(state, action);\n case 'REMOVE':\n return remove(state, action);\n case 'REMOVEALL':\n return [];\n default:\n return state;\n }\n };\n\n var sAlertStore = createSAlertStore(alertsReducer);\n\n exports.default = sAlertStore;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-s-alert/dist/s-alert-parts/s-alert-store.js\n// module id = 19\n// module chunks = 0","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['exports', 'react', 'prop-types'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(exports, require('react'), require('prop-types'));\n } else {\n var mod = {\n exports: {}\n };\n factory(mod.exports, global.react, global.propTypes);\n global.SAlertContentTmpl = mod.exports;\n }\n})(this, function (exports, _react, _propTypes) {\n 'use strict';\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n\n var _react2 = _interopRequireDefault(_react);\n\n var _propTypes2 = _interopRequireDefault(_propTypes);\n\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n }\n\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n\n var _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n }();\n\n function _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n }\n\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n }\n\n var SAlertContentTmpl = function (_React$Component) {\n _inherits(SAlertContentTmpl, _React$Component);\n\n function SAlertContentTmpl(props) {\n _classCallCheck(this, SAlertContentTmpl);\n\n return _possibleConstructorReturn(this, (SAlertContentTmpl.__proto__ || Object.getPrototypeOf(SAlertContentTmpl)).call(this, props));\n }\n\n _createClass(SAlertContentTmpl, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: this.props.classNames, id: this.props.id, style: this.props.styles },\n _react2.default.createElement(\n 'div',\n { className: 's-alert-box-inner' },\n this.props.message\n ),\n _react2.default.createElement('span', { className: 's-alert-close', onClick: this.props.handleClose })\n );\n }\n }]);\n\n return SAlertContentTmpl;\n }(_react2.default.Component);\n\n SAlertContentTmpl.propTypes = {\n id: _propTypes2.default.string.isRequired,\n classNames: _propTypes2.default.string.isRequired,\n styles: _propTypes2.default.object.isRequired,\n message: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]).isRequired,\n handleClose: _propTypes2.default.func.isRequired,\n customFields: _propTypes2.default.object\n };\n\n exports.default = SAlertContentTmpl;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-s-alert/dist/SAlertContentTmpl.js\n// module id = 20\n// module chunks = 0","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['exports', 'react', 'react-dom', '../SAlertContent', './s-alert-store', './s-alert-tools'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(exports, require('react'), require('react-dom'), require('../SAlertContent'), require('./s-alert-store'), require('./s-alert-tools'));\n } else {\n var mod = {\n exports: {}\n };\n factory(mod.exports, global.react, global.reactDom, global.SAlertContent, global.sAlertStore, global.sAlertTools);\n global.sAlertDataPrep = mod.exports;\n }\n})(this, function (exports, _react, _reactDom, _SAlertContent, _sAlertStore, _sAlertTools) {\n 'use strict';\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n\n var _react2 = _interopRequireDefault(_react);\n\n var _reactDom2 = _interopRequireDefault(_reactDom);\n\n var _SAlertContent2 = _interopRequireDefault(_SAlertContent);\n\n var _sAlertStore2 = _interopRequireDefault(_sAlertStore);\n\n var _sAlertTools2 = _interopRequireDefault(_sAlertTools);\n\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n }\n\n var _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n var getAlertData = function getAlertData(sAlertPosition) {\n var positionTop = 0;\n var positionBottom = 0;\n var padding = 0;\n var alerts = {};\n var style = void 0;\n var docElement = void 0;\n var sAlertBoxHeight = void 0;\n var positionTypeTop = void 0;\n var positionTypeBottom = void 0;\n var checkFirst = function checkFirst(type, objId) {\n var collectionOfType = sAlertCollection.filter(function (obj) {\n return obj.position === type || sAlertGlobalConfig.position === type;\n });\n return collectionOfType && collectionOfType[0].id === objId;\n };\n var positionFunc = function positionFunc(position, positionType, alert, docElement, sAlertBoxHeight, reactComponent) {\n padding = aStack.spacing || parseInt(getComputedStyle(_reactDom2.default.findDOMNode(reactComponent))[positionType]);\n if (checkFirst(aPosition, alert.id) && aOffset) {\n position = 0;\n position = position + parseInt(aOffset);\n }\n if (checkFirst(aPosition, alert.id) && aStack.spacing) {\n position = position;\n } else {\n position = position + parseInt(padding);\n }\n style = positionType + ': ' + position + 'px;';\n position = position + sAlertBoxHeight;\n return position;\n };\n\n var sAlertGlobalConfig = _sAlertTools2.default.getGlobalConfig();\n var aStack = void 0;\n var aContentTemplate = void 0;\n var aOffset = void 0;\n var aMessage = void 0;\n var aHtml = void 0;\n var aCustomFields = void 0;\n var aPosition = void 0;\n\n var query = {};\n if (sAlertPosition === 'left') {\n query = function query(item) {\n return item.position === 'top-left' || item.position === 'bottom-left' || !item.position && (sAlertGlobalConfig.position === 'top-left' || sAlertGlobalConfig.position === 'bottom-left');\n };\n }\n if (sAlertPosition === 'right') {\n query = function query(item) {\n return item.position === 'top-right' || item.position === 'bottom-right' || !item.position && (sAlertGlobalConfig.position === 'top-right' || sAlertGlobalConfig.position === 'bottom-right');\n };\n }\n if (sAlertPosition === 'full-top') {\n query = function query(item) {\n return item.position === 'top' || !item.position && sAlertGlobalConfig.position === 'top';\n };\n }\n if (sAlertPosition === 'full-bottom') {\n query = function query(item) {\n return item.position === 'bottom' || !item.position && sAlertGlobalConfig.position === 'bottom';\n };\n }\n\n var currentState = _sAlertStore2.default.getState();\n var sAlertCollection = currentState.slice().filter(query);\n\n return sAlertCollection.map(function (alert) {\n aStack = sAlertGlobalConfig.stack;\n aContentTemplate = sAlertGlobalConfig.contentTemplate;\n aOffset = _sAlertTools2.default.returnFirstDefined(alert.offset, sAlertGlobalConfig.offset);\n aMessage = _sAlertTools2.default.returnFirstDefined(alert.message, sAlertGlobalConfig.message);\n aHtml = _sAlertTools2.default.returnFirstDefined(alert.html, sAlertGlobalConfig.html);\n aCustomFields = _sAlertTools2.default.returnFirstDefined(alert.customFields, sAlertGlobalConfig.customFields);\n aPosition = _sAlertTools2.default.returnFirstDefined(alert.position, sAlertGlobalConfig.position);\n positionTypeTop = aPosition && /top/g.test(aPosition);\n positionTypeBottom = aPosition && /bottom/g.test(aPosition);\n if (aStack) {\n // checking alert box height - needed to calculate position\n docElement = document.createElement('div');\n docElement.classList.add('s-alert-box-height');\n\n // mock element, needed for positions calculations\n var reactElement = _react2.default.createElement(_SAlertContent2.default, {\n key: _sAlertTools2.default.randomId(),\n id: _sAlertTools2.default.randomId(),\n condition: alert.condition,\n message: aMessage,\n position: aPosition,\n effect: alert.effect,\n boxPosition: alert.boxPosition,\n beep: false,\n timeout: 'none',\n html: aHtml,\n contentTemplate: aContentTemplate,\n customFields: aCustomFields\n });\n var reactComponent = _reactDom2.default.render(reactElement, docElement);\n\n document.body.appendChild(docElement);\n sAlertBoxHeight = parseInt(getComputedStyle(_reactDom2.default.findDOMNode(reactComponent))['height']);\n if (positionTypeTop) {\n positionTop = positionFunc(positionTop, 'top', alert, docElement, sAlertBoxHeight, reactComponent);\n }\n if (positionTypeBottom) {\n positionBottom = positionFunc(positionBottom, 'bottom', alert, docElement, sAlertBoxHeight, reactComponent);\n }\n var sAlertComputedStyle = getComputedStyle(_reactDom2.default.findDOMNode(reactComponent));\n if (sAlertPosition === 'left') {\n style = style + 'left: ' + (aStack.spacing || parseInt(sAlertComputedStyle.left)) + 'px;';\n }\n if (sAlertPosition === 'right') {\n style = style + 'right: ' + (aStack.spacing || parseInt(sAlertComputedStyle.right)) + 'px;';\n }\n alerts = _extends({}, alert, { boxPosition: style });\n _reactDom2.default.unmountComponentAtNode(docElement);\n docElement.parentNode.removeChild(docElement);\n } else if (aOffset && positionTypeTop) {\n alerts = _extends({}, alert, { boxPosition: 'top: ' + parseInt(aOffset) + 'px;' });\n } else if (aOffset && positionTypeBottom) {\n alerts = _extends({}, alert, { boxPosition: 'bottom: ' + parseInt(aOffset) + 'px;' });\n } else {\n alerts = alert;\n }\n return alerts;\n });\n };\n\n exports.default = getAlertData;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-s-alert/dist/s-alert-parts/s-alert-data-prep.js\n// module id = 21\n// module chunks = 0","const CONST_VAR = {\n SORT_DESC: 'desc',\n SORT_ASC: 'asc',\n AWAIT_BEFORE_CELL_EDIT: 1,\n SIZE_PER_PAGE: 10,\n NEXT_PAGE: '>',\n NEXT_PAGE_TITLE: 'next page',\n LAST_PAGE: '>>',\n LAST_PAGE_TITLE: 'last page',\n PRE_PAGE: '<',\n PRE_PAGE_TITLE: 'previous page',\n FIRST_PAGE: '<<',\n FIRST_PAGE_TITLE: 'first page',\n PAGE_START_INDEX: 1,\n ROW_SELECT_BG_COLOR: '',\n ROW_SELECT_NONE: 'none',\n ROW_SELECT_SINGLE: 'radio',\n ROW_SELECT_MULTI: 'checkbox',\n CELL_EDIT_NONE: 'none',\n CELL_EDIT_CLICK: 'click',\n CELL_EDIT_DBCLICK: 'dbclick',\n SIZE_PER_PAGE_LIST: [ 10, 25, 30, 50 ],\n PAGINATION_SIZE: 5,\n PAGINATION_POS_TOP: 'top',\n PAGINATION_POS_BOTTOM: 'bottom',\n PAGINATION_POS_BOTH: 'both',\n TOOLBAR_POS_TOP: 'top',\n TOOLBAR_POS_BOTTOM: 'bottom',\n TOOLBAR_POS_BOTH: 'both',\n NO_DATA_TEXT: 'There is no data to display',\n SHOW_ONLY_SELECT: 'Show Selected Only',\n SHOW_ALL: 'Show All',\n EXPORT_CSV_TEXT: 'Export to CSV',\n INSERT_BTN_TEXT: 'New',\n DELETE_BTN_TEXT: 'Delete',\n SAVE_BTN_TEXT: 'Save',\n CLOSE_BTN_TEXT: 'Close',\n FILTER_DELAY: 500,\n SCROLL_TOP: 'Top',\n SCROLL_BOTTOM: 'Bottom',\n FILTER_TYPE: {\n TEXT: 'TextFilter',\n REGEX: 'RegexFilter',\n SELECT: 'SelectFilter',\n NUMBER: 'NumberFilter',\n DATE: 'DateFilter',\n CUSTOM: 'CustomFilter',\n ARRAY: 'ArrayFilter'\n },\n FILTER_COND_EQ: 'eq',\n FILTER_COND_LIKE: 'like',\n EXPAND_BY_ROW: 'row',\n EXPAND_BY_COL: 'column',\n REMOTE_SORT: 'sort',\n REMOTE_PAGE: 'pagination',\n REMOTE_CELL_EDIT: 'cellEdit',\n REMOTE_INSERT_ROW: 'insertRow',\n REMOTE_DROP_ROW: 'dropRow',\n REMOTE_FILTER: 'filter',\n REMOTE_SEARCH: 'search',\n REMOTE_EXPORT_CSV: 'exportCSV',\n INSERT_FAIL_INDICATOR: 'Validation errors, please check!',\n DEFAULT_CSV_SEPARATOR: ',',\n CSV_STRING_TYPE: 'string',\n CSV_NUMBER_TYPE: 'number',\n AUTO_COLLAPSE_WHEN_SORT: false,\n AUTO_COLLAPSE_WHEN_SEARCH: false,\n AUTO_COLLAPSE_WHEN_FILTER: false\n};\n\nCONST_VAR.REMOTE = {};\nCONST_VAR.REMOTE[CONST_VAR.REMOTE_SORT] = false;\nCONST_VAR.REMOTE[CONST_VAR.REMOTE_PAGE] = false;\nCONST_VAR.REMOTE[CONST_VAR.REMOTE_CELL_EDIT] = false;\nCONST_VAR.REMOTE[CONST_VAR.REMOTE_INSERT_ROW] = false;\nCONST_VAR.REMOTE[CONST_VAR.REMOTE_DROP_ROW] = false;\nCONST_VAR.REMOTE[CONST_VAR.REMOTE_FILTER] = false;\nCONST_VAR.REMOTE[CONST_VAR.REMOTE_SEARCH] = false;\nCONST_VAR.REMOTE[CONST_VAR.REMOTE_EXPORT_CSV] = false;\n\nexport default CONST_VAR;\n\n\n\n// WEBPACK FOOTER //\n// src/Const.js","/* eslint default-case: 0 */\n/* eslint guard-for-in: 0 */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport classSet from 'classnames';\nimport Const from './Const';\nimport Util from './util';\nimport DateFilter from './filters/Date';\nimport TextFilter from './filters/Text';\nimport RegexFilter from './filters/Regex';\nimport SelectFilter from './filters/Select';\nimport NumberFilter from './filters/Number';\n\nclass TableHeaderColumn extends Component {\n\n constructor(props) {\n super(props);\n this.handleFilter = this.handleFilter.bind(this);\n }\n\n componentWillReceiveProps(nextProps) {\n if (nextProps.reset) {\n this.cleanFiltered();\n }\n\n // If column not displaying the same dataField, reset the filter accordingly\n if (nextProps.filter && nextProps.dataField !== this.props.dataField) {\n const emitter = nextProps.filter.emitter || {};\n const currentFilter = emitter.currentFilter || {};\n const filter = currentFilter[nextProps.dataField];\n const value = filter ? filter.value : '';\n\n const { ref } = this.getFilters(nextProps) || {};\n if (this.refs[ref]) {\n this.refs[ref].setState({ value });\n }\n }\n }\n\n handleColumnClick = () => {\n if (this.props.isOnlyHead || !this.props.dataSort) return;\n let { sort: order } = this.props;\n if (!order && this.props.defaultASC) order = Const.SORT_ASC;\n else order = this.props.sort === Const.SORT_DESC ? Const.SORT_ASC : Const.SORT_DESC;\n this.props.onSort(order, this.props.dataField);\n }\n\n handleFilter(value, type) {\n const { filter } = this.props;\n filter.emitter.handleFilter(this.props.dataField, value, type, filter);\n }\n\n getFilters(props = this.props) {\n const { headerText, children } = props;\n switch (props.filter.type) {\n case Const.FILTER_TYPE.TEXT: {\n return (\n this.textFilter = n } { ...props.filter }\n columnName={ headerText || children } filterHandler={ this.handleFilter } />\n );\n }\n case Const.FILTER_TYPE.REGEX: {\n return (\n this.regexFilter = n } { ...props.filter }\n columnName={ headerText || children } filterHandler={ this.handleFilter } />\n );\n }\n case Const.FILTER_TYPE.SELECT: {\n return (\n this.selectFilter = n } { ...props.filter }\n columnName={ headerText || children } filterHandler={ this.handleFilter } />\n );\n }\n case Const.FILTER_TYPE.NUMBER: {\n return (\n this.numberFilter = n } { ...props.filter }\n columnName={ headerText || children } filterHandler={ this.handleFilter } />\n );\n }\n case Const.FILTER_TYPE.DATE: {\n return (\n this.dateFilter = n } { ...props.filter }\n columnName={ headerText || children } filterHandler={ this.handleFilter } />\n );\n }\n case Const.FILTER_TYPE.CUSTOM: {\n const elm = props.filter.getElement(this.handleFilter,\n props.filter.customFilterParameters);\n\n return React.cloneElement(elm, { ref: n => this.customFilter = n });\n }\n }\n }\n\n componentDidMount() {\n this.headerCol.setAttribute('data-field', this.props.dataField);\n }\n\n renderDefaultCaret(dataSort, isBootstrap4) {\n if (!dataSort) return null;\n if (isBootstrap4) {\n return (\n \n );\n } else {\n return (\n \n \n \n \n \n \n \n \n );\n }\n }\n\n render() {\n let defaultCaret;\n let sortCaret;\n let sortClass;\n const {\n headerText,\n dataAlign,\n dataField,\n headerAlign,\n headerTitle,\n hidden,\n sort,\n dataSort,\n sortIndicator,\n children,\n caretRender,\n className,\n isOnlyHead,\n version,\n sortHeaderColumnClassName: customSortClass,\n thStyle: style\n } = this.props;\n const thStyle = {\n textAlign: headerAlign || dataAlign,\n display: hidden ? 'none' : null,\n ...style\n };\n const isBootstrap4 = Util.isBootstrap4(version);\n if (!isOnlyHead) {\n if (sortIndicator) {\n defaultCaret = this.renderDefaultCaret(dataSort, isBootstrap4);\n }\n sortCaret = sort ? Util.renderReactSortCaret(sort, isBootstrap4) : defaultCaret;\n if (caretRender) {\n sortCaret = caretRender(sort, dataField);\n }\n }\n\n if (sort) {\n sortClass = Util.isFunction(customSortClass) ?\n customSortClass(sort, dataField) : customSortClass;\n }\n const classes = classSet(\n Util.isFunction(className) ? className() : className,\n !isOnlyHead && dataSort ? 'sort-column' : '',\n sortClass);\n\n const attr = {};\n if (headerTitle) {\n if (typeof children === 'string' && !headerText) {\n attr.title = children;\n } else {\n attr.title = headerText;\n }\n }\n return (\n this.headerCol = node }\n className={ classes }\n style={ thStyle }\n onClick={ this.handleColumnClick }\n rowSpan={ this.props.rowSpan }\n colSpan={ this.props.colSpan }\n data-is-only-head={ this.props.isOnlyHead }\n { ...attr }>\n { children }{ sortCaret }\n e.stopPropagation() }>\n { this.props.filter && !isOnlyHead ? this.getFilters() : null }\n \n | \n );\n }\n\n cleanFiltered() {\n if (!this.props.filter) return;\n\n switch (this.props.filter.type) {\n case Const.FILTER_TYPE.TEXT: {\n this.textFilter.cleanFiltered();\n break;\n }\n case Const.FILTER_TYPE.REGEX: {\n this.regexFilter.cleanFiltered();\n break;\n }\n case Const.FILTER_TYPE.SELECT: {\n this.selectFilter.cleanFiltered();\n break;\n }\n case Const.FILTER_TYPE.NUMBER: {\n this.numberFilter.cleanFiltered();\n break;\n }\n case Const.FILTER_TYPE.DATE: {\n this.dateFilter.cleanFiltered();\n break;\n }\n case Const.FILTER_TYPE.CUSTOM: {\n this.customFilter.cleanFiltered();\n break;\n }\n }\n }\n\n applyFilter(val) {\n if (!this.props.filter) return;\n switch (this.props.filter.type) {\n case Const.FILTER_TYPE.TEXT: {\n this.textFilter.applyFilter(val);\n break;\n }\n case Const.FILTER_TYPE.REGEX: {\n this.regexFilter.applyFilter(val);\n break;\n }\n case Const.FILTER_TYPE.SELECT: {\n this.selectFilter.applyFilter(val);\n break;\n }\n case Const.FILTER_TYPE.NUMBER: {\n this.numberFilter.applyFilter(val);\n break;\n }\n case Const.FILTER_TYPE.DATE: {\n this.dateFilter.applyFilter(val);\n break;\n }\n }\n }\n}\n\nconst filterTypeArray = [];\nfor (const key in Const.FILTER_TYPE) {\n filterTypeArray.push(Const.FILTER_TYPE[key]);\n}\n\nTableHeaderColumn.propTypes = {\n dataField: PropTypes.string,\n dataAlign: PropTypes.string,\n headerAlign: PropTypes.string,\n headerTitle: PropTypes.bool,\n headerText: PropTypes.string,\n dataSort: PropTypes.bool,\n onSort: PropTypes.func,\n dataFormat: PropTypes.func,\n csvFormat: PropTypes.func,\n csvHeader: PropTypes.string,\n csvFieldType: PropTypes.oneOf([ Const.CSV_STRING_TYPE, Const.CSV_NUMBER_TYPE ]),\n isKey: PropTypes.bool,\n editable: PropTypes.any,\n hidden: PropTypes.bool,\n hiddenOnInsert: PropTypes.bool,\n searchable: PropTypes.bool,\n className: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func\n ]),\n width: PropTypes.string,\n sortFunc: PropTypes.func,\n sortFuncExtraData: PropTypes.any,\n sortHeaderColumnClassName: PropTypes.any,\n columnClassName: PropTypes.any,\n editColumnClassName: PropTypes.any,\n invalidEditColumnClassName: PropTypes.any,\n columnTitle: PropTypes.oneOfType([\n PropTypes.bool,\n PropTypes.func,\n PropTypes.string\n ]),\n filterFormatted: PropTypes.bool,\n filterValue: PropTypes.func,\n sort: PropTypes.string,\n caretRender: PropTypes.func,\n formatExtraData: PropTypes.any,\n csvFormatExtraData: PropTypes.any,\n filter: PropTypes.shape({\n type: PropTypes.oneOf(filterTypeArray),\n delay: PropTypes.number,\n options: PropTypes.oneOfType([\n PropTypes.object, // for SelectFilter\n PropTypes.arrayOf(PropTypes.number) // for NumberFilter\n ]),\n numberComparators: PropTypes.arrayOf(PropTypes.string),\n emitter: PropTypes.object,\n placeholder: PropTypes.string,\n getElement: PropTypes.func,\n customFilterParameters: PropTypes.object,\n condition: PropTypes.oneOf([ Const.FILTER_COND_EQ, Const.FILTER_COND_LIKE ])\n }),\n sortIndicator: PropTypes.bool,\n export: PropTypes.bool,\n expandable: PropTypes.bool,\n tdAttr: PropTypes.object,\n editTdAttr: PropTypes.object,\n tdStyle: PropTypes.oneOfType([ PropTypes.func, PropTypes.object ]),\n thStyle: PropTypes.object,\n keyValidator: PropTypes.bool,\n defaultASC: PropTypes.bool\n};\n\nTableHeaderColumn.defaultProps = {\n dataAlign: 'left',\n headerAlign: undefined,\n headerTitle: true,\n dataSort: false,\n dataFormat: undefined,\n csvFormat: undefined,\n csvHeader: undefined,\n csvFieldType: Const.CSV_STRING_TYPE,\n isKey: false,\n editable: true,\n onSort: undefined,\n hidden: false,\n hiddenOnInsert: false,\n searchable: true,\n className: '',\n columnTitle: false,\n width: null,\n sortFunc: undefined,\n columnClassName: '',\n editColumnClassName: '',\n invalidEditColumnClassName: '',\n filterFormatted: false,\n filterValue: undefined,\n sort: undefined,\n formatExtraData: undefined,\n sortFuncExtraData: undefined,\n filter: undefined,\n sortIndicator: true,\n expandable: true,\n tdAttr: undefined,\n editTdAttr: undefined,\n tdStyle: undefined,\n thStyle: undefined,\n keyValidator: false,\n defaultASC: false\n};\n\nexport default TableHeaderColumn;\n\n\n\n// WEBPACK FOOTER //\n// src/TableHeaderColumn.js","/* eslint react/display-name: 0 */\nimport React from 'react';\nimport Const from './Const';\nimport classSet from 'classnames';\n\nexport default {\n renderReactSortCaret(order, isBootstrap4) {\n let orderClass;\n if (isBootstrap4) {\n orderClass = classSet('fa', {\n 'fa-sort-asc': order === Const.SORT_ASC,\n 'fa-sort-desc': order === Const.SORT_DESC\n });\n return (\n \n );\n } else {\n orderClass = classSet('order', {\n 'dropup': order === Const.SORT_ASC\n });\n return (\n \n \n \n );\n }\n },\n\n isFunction(obj) {\n return obj && (typeof obj === 'function');\n },\n\n getScrollBarWidth() {\n const inner = document.createElement('p');\n inner.style.width = '100%';\n inner.style.height = '200px';\n\n const outer = document.createElement('div');\n outer.style.position = 'absolute';\n outer.style.top = '0px';\n outer.style.left = '0px';\n outer.style.visibility = 'hidden';\n outer.style.width = '200px';\n outer.style.height = '150px';\n outer.style.overflow = 'hidden';\n outer.appendChild(inner);\n\n document.body.appendChild(outer);\n const w1 = inner.getBoundingClientRect().width;\n outer.style.overflow = 'scroll';\n let w2 = inner.getBoundingClientRect().width;\n\n if (w1 === w2) w2 = outer.clientWidth;\n\n document.body.removeChild(outer);\n\n return (w1 - w2);\n },\n\n canUseDOM() {\n return typeof window !== 'undefined' && typeof window.document !== 'undefined';\n },\n\n // We calculate an offset here in order to properly fetch the indexed data,\n // despite the page start index not always being 1\n getNormalizedPage(pageStartIndex, page) {\n pageStartIndex = this.getFirstPage(pageStartIndex);\n if (page === undefined) page = pageStartIndex;\n const offset = Math.abs(Const.PAGE_START_INDEX - pageStartIndex);\n return page + offset;\n },\n\n getFirstPage(pageStartIndex) {\n return pageStartIndex !== undefined ? pageStartIndex : Const.PAGE_START_INDEX;\n },\n\n isBootstrap4(version) {\n return version === '4';\n },\n\n isSelectRowDefined(mode) {\n return mode === Const.ROW_SELECT_SINGLE || mode === Const.ROW_SELECT_MULTI;\n },\n\n renderColGroup(columns, selectRow, expandColumnOptions = {}, version) {\n let selectRowHeader = null;\n let expandRowHeader = null;\n const isBootstrap4 = this.isBootstrap4(version);\n const isSelectRowDefined = this.isSelectRowDefined(selectRow.mode);\n const columnWidth = isBootstrap4 ? '38px' : '30px';\n if (isSelectRowDefined) {\n const style = {\n width: selectRow.columnWidth || columnWidth,\n minWidth: selectRow.columnWidth || columnWidth\n };\n if (!selectRow.hideSelectColumn) {\n selectRowHeader = ();\n }\n }\n if (expandColumnOptions.expandColumnVisible) {\n const style = {\n width: expandColumnOptions.columnWidth || columnWidth,\n minWidth: expandColumnOptions.columnWidth || columnWidth\n };\n expandRowHeader = ();\n }\n const theader = columns.map(function(column, i) {\n const style = {\n display: column.hidden ? 'none' : null\n };\n if (column.width) {\n const width = !isNaN(column.width) ? column.width + 'px' : column.width;\n style.width = width;\n /** add min-wdth to fix user assign column width\n not eq offsetWidth in large column table **/\n style.minWidth = width;\n }\n return ();\n });\n\n return (\n \n { expandColumnOptions.expandColumnVisible &&\n expandColumnOptions.expandColumnBeforeSelectColumn &&\n expandRowHeader }\n { selectRowHeader }\n { expandColumnOptions.expandColumnVisible &&\n !expandColumnOptions.expandColumnBeforeSelectColumn &&\n expandRowHeader }\n { theader }\n \n );\n }\n};\n\n\n\n// WEBPACK FOOTER //\n// src/util.js","/* eslint quotes: 0 */\n/* eslint max-len: 0 */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Const from '../Const';\n\nconst legalComparators = [ '=', '>', '>=', '<', '<=', '!=' ];\n\nfunction dateParser(d) {\n return `${d.getFullYear()}-${(\"0\" + (d.getMonth() + 1)).slice(-2)}-${(\"0\" + d.getDate()).slice(-2)}`;\n}\n\nclass DateFilter extends Component {\n constructor(props) {\n super(props);\n this.dateComparators = this.props.dateComparators || legalComparators;\n this.filter = this.filter.bind(this);\n this.onChangeComparator = this.onChangeComparator.bind(this);\n }\n\n setDefaultDate() {\n let defaultDate = '';\n const { defaultValue } = this.props;\n if (defaultValue && defaultValue.date) {\n // Set the appropriate format for the input type=date, i.e. \"YYYY-MM-DD\"\n defaultDate = dateParser(new Date(defaultValue.date));\n }\n return defaultDate;\n }\n\n onChangeComparator(event) {\n let date = this.inputDate.value;\n const comparator = event.target.value;\n if (date === '') {\n return;\n }\n date = new Date(date);\n this.props.filterHandler({ date, comparator }, Const.FILTER_TYPE.DATE);\n }\n\n getComparatorOptions() {\n const optionTags = [];\n optionTags.push();\n for (let i = 0; i < this.dateComparators.length; i++) {\n optionTags.push(\n \n );\n }\n return optionTags;\n }\n\n filter(event) {\n const comparator = this.dateFilterComparator.value;\n const dateValue = event.target.value;\n if (dateValue) {\n this.props.filterHandler({ date: new Date(dateValue), comparator }, Const.FILTER_TYPE.DATE);\n } else {\n this.props.filterHandler(null, Const.FILTER_TYPE.DATE);\n }\n }\n\n cleanFiltered() {\n const value = this.setDefaultDate();\n const comparator = (this.props.defaultValue) ? this.props.defaultValue.comparator : '';\n this.setState(() => { return { isPlaceholderSelected: (value === '') }; });\n this.dateFilterComparator.value = comparator;\n this.inputDate.value = value;\n this.props.filterHandler({ date: new Date(value), comparator }, Const.FILTER_TYPE.DATE);\n }\n\n applyFilter(filterDateObj) {\n const { date, comparator } = filterDateObj;\n this.setState(() => { return { isPlaceholderSelected: (date === '') }; });\n this.dateFilterComparator.value = comparator;\n this.inputDate.value = dateParser(date);\n this.props.filterHandler({ date, comparator }, Const.FILTER_TYPE.DATE);\n }\n\n componentDidMount() {\n const comparator = this.dateFilterComparator.value;\n const dateValue = this.inputDate.value;\n if (comparator && dateValue) {\n this.props.filterHandler({ date: new Date(dateValue), comparator }, Const.FILTER_TYPE.DATE);\n }\n }\n\n render() {\n const { defaultValue, style: { date, comparator } } = this.props;\n return (\n \n \n this.inputDate = n }\n className='filter date-filter-input form-control'\n style={ date }\n type='date'\n onChange={ this.filter }\n defaultValue={ this.setDefaultDate() } />\n
\n );\n }\n}\n\nDateFilter.propTypes = {\n filterHandler: PropTypes.func.isRequired,\n defaultValue: PropTypes.shape({\n date: PropTypes.object,\n comparator: PropTypes.oneOf(legalComparators)\n }),\n style: PropTypes.shape({\n date: PropTypes.oneOfType([ PropTypes.object ]),\n comparator: PropTypes.oneOfType([ PropTypes.object ])\n }),\n /* eslint consistent-return: 0 */\n dateComparators: function(props, propName) {\n if (!props[propName]) {\n return;\n }\n for (let i = 0; i < props[propName].length; i++) {\n let comparatorIsValid = false;\n for (let j = 0; j < legalComparators.length; j++) {\n if (legalComparators[j] === props[propName][i]) {\n comparatorIsValid = true;\n break;\n }\n }\n if (!comparatorIsValid) {\n return new Error(`Date comparator provided is not supported.\n Use only ${legalComparators}`);\n }\n }\n },\n columnName: PropTypes.any\n};\n\nDateFilter.defaultProps = {\n style: {\n date: null,\n comparator: null\n }\n};\n\n\nexport default DateFilter;\n\n\n\n// WEBPACK FOOTER //\n// src/filters/Date.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Const from '../Const';\n\nclass TextFilter extends Component {\n constructor(props) {\n super(props);\n this.filter = this.filter.bind(this);\n this.timeout = null;\n this.state = {\n value: this.props.defaultValue || ''\n };\n }\n\n filter(event) {\n if (this.timeout) {\n clearTimeout(this.timeout);\n }\n const filterValue = event.target.value;\n this.setState(() => { return { value: filterValue }; });\n this.timeout = setTimeout(() => {\n this.props.filterHandler(filterValue, Const.FILTER_TYPE.TEXT);\n }, this.props.delay);\n }\n\n cleanFiltered() {\n const value = this.props.defaultValue ? this.props.defaultValue : '';\n this.setState(() => { return { value }; });\n this.props.filterHandler(value, Const.FILTER_TYPE.TEXT);\n }\n\n applyFilter(filterText) {\n this.setState(() => { return { value: filterText }; });\n this.props.filterHandler(filterText, Const.FILTER_TYPE.TEXT);\n }\n\n componentDidMount() {\n const defaultValue = this.inputText.value;\n if (defaultValue) {\n this.props.filterHandler(defaultValue, Const.FILTER_TYPE.TEXT);\n }\n }\n\n componentWillReceiveProps(nextProps) {\n if (nextProps.defaultValue !== this.props.defaultValue) {\n this.applyFilter(nextProps.defaultValue || '');\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this.timeout);\n }\n\n render() {\n const { placeholder, columnName, style } = this.props;\n return (\n this.inputText = n }\n className='filter text-filter form-control'\n type='text'\n style={ style }\n onChange={ this.filter }\n placeholder={ placeholder || `Enter ${columnName}...` }\n value={ this.state.value } />\n );\n }\n}\n\nTextFilter.propTypes = {\n filterHandler: PropTypes.func.isRequired,\n defaultValue: PropTypes.string,\n delay: PropTypes.number,\n placeholder: PropTypes.string,\n columnName: PropTypes.any,\n style: PropTypes.oneOfType([ PropTypes.object ])\n};\n\nTextFilter.defaultProps = {\n delay: Const.FILTER_DELAY\n};\n\nexport default TextFilter;\n\n\n\n// WEBPACK FOOTER //\n// src/filters/Text.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Const from '../Const';\n\nclass RegexFilter extends Component {\n constructor(props) {\n super(props);\n this.filter = this.filter.bind(this);\n this.timeout = null;\n }\n\n filter(event) {\n if (this.timeout) {\n clearTimeout(this.timeout);\n }\n const filterValue = event.target.value;\n this.timeout = setTimeout(() => {\n this.props.filterHandler(filterValue, Const.FILTER_TYPE.REGEX);\n }, this.props.delay);\n }\n\n cleanFiltered() {\n const value = this.props.defaultValue ? this.props.defaultValue : '';\n this.inputText.value = value;\n this.props.filterHandler(value, Const.FILTER_TYPE.TEXT);\n }\n\n applyFilter(filterRegx) {\n this.inputText.value = filterRegx;\n this.props.filterHandler(filterRegx, Const.FILTER_TYPE.REGEX);\n }\n\n componentDidMount() {\n const value = this.inputText.value;\n if (value) {\n this.props.filterHandler(value, Const.FILTER_TYPE.REGEX);\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this.timeout);\n }\n\n render() {\n const { defaultValue, placeholder, columnName, style } = this.props;\n return (\n this.inputText = n }\n className='filter text-filter form-control'\n type='text'\n style={ style }\n onChange={ this.filter }\n placeholder={ placeholder || `Enter Regex for ${columnName}...` }\n defaultValue={ (defaultValue) ? defaultValue : '' } />\n );\n }\n}\n\nRegexFilter.propTypes = {\n filterHandler: PropTypes.func.isRequired,\n defaultValue: PropTypes.string,\n delay: PropTypes.number,\n placeholder: PropTypes.string,\n columnName: PropTypes.any,\n style: PropTypes.oneOfType([ PropTypes.object ])\n};\n\nRegexFilter.defaultProps = {\n delay: Const.FILTER_DELAY\n};\n\nexport default RegexFilter;\n\n\n\n// WEBPACK FOOTER //\n// src/filters/Regex.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport classSet from 'classnames';\nimport Const from '../Const';\n\nfunction optionsEquals(options1, options2) {\n const keys = Object.keys(options1);\n for (const k in keys) {\n if (options1[k] !== options2[k]) {\n return false;\n }\n }\n return Object.keys(options1).length === Object.keys(options2).length;\n}\n\nclass SelectFilter extends Component {\n constructor(props) {\n super(props);\n this.filter = this.filter.bind(this);\n this.state = {\n isPlaceholderSelected: (this.props.defaultValue === undefined ||\n !this.props.options.hasOwnProperty(this.props.defaultValue))\n };\n }\n\n componentWillReceiveProps() {\n const currentSelectValue = this.selectInput.value;\n const isPlaceholderSelected = !currentSelectValue || currentSelectValue === '';\n this.setState(() => {\n return {\n isPlaceholderSelected\n };\n });\n }\n\n componentDidUpdate(prevProps) {\n let needFilter = false;\n if (this.props.defaultValue !== prevProps.defaultValue) {\n needFilter = true;\n } else if (!optionsEquals(this.props.options, prevProps.options)) {\n needFilter = true;\n }\n if (needFilter) {\n const value = this.selectInput.value;\n if (value) {\n this.props.filterHandler(value, Const.FILTER_TYPE.SELECT);\n }\n }\n }\n\n filter(event) {\n const { value } = event.target;\n this.setState(() => { return { isPlaceholderSelected: (value === '') }; });\n this.props.filterHandler(value, Const.FILTER_TYPE.SELECT);\n }\n\n cleanFiltered() {\n const value = (this.props.defaultValue !== undefined) ? this.props.defaultValue : '';\n this.setState(() => { return { isPlaceholderSelected: (value === '') }; });\n this.selectInput.value = value;\n this.props.filterHandler(value, Const.FILTER_TYPE.SELECT);\n }\n\n applyFilter(filterOption) {\n filterOption = filterOption + '';\n this.setState(() => { return { isPlaceholderSelected: (filterOption === '') }; });\n this.selectInput.value = filterOption;\n this.props.filterHandler(filterOption, Const.FILTER_TYPE.SELECT);\n }\n\n getOptions() {\n const optionTags = [];\n const { options, placeholder, columnName, selectText, withoutEmptyOption } = this.props;\n const selectTextValue = (selectText !== undefined) ? selectText : 'Select';\n if (!withoutEmptyOption) {\n optionTags.push((\n \n ));\n }\n Object.keys(options).map(key => {\n optionTags.push();\n });\n return optionTags;\n }\n\n componentDidMount() {\n const value = this.selectInput.value;\n if (value) {\n this.props.filterHandler(value, Const.FILTER_TYPE.SELECT);\n }\n }\n\n render() {\n const selectClass = classSet('filter', 'select-filter', 'form-control',\n { 'placeholder-selected': this.state.isPlaceholderSelected });\n\n return (\n \n );\n }\n}\n\nSelectFilter.propTypes = {\n filterHandler: PropTypes.func.isRequired,\n options: PropTypes.object.isRequired,\n placeholder: PropTypes.string,\n columnName: PropTypes.any,\n style: PropTypes.oneOfType([ PropTypes.object ])\n};\n\nexport default SelectFilter;\n\n\n\n// WEBPACK FOOTER //\n// src/filters/Select.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport classSet from 'classnames';\nimport Const from '../Const';\n\nconst legalComparators = [ '=', '>', '>=', '<', '<=', '!=' ];\n\nclass NumberFilter extends Component {\n constructor(props) {\n super(props);\n this.numberComparators = this.props.numberComparators || legalComparators;\n this.timeout = null;\n this.state = {\n isPlaceholderSelected: (this.props.defaultValue === undefined ||\n this.props.defaultValue.number === undefined ||\n (this.props.options &&\n this.props.options.indexOf(this.props.defaultValue.number) === -1))\n };\n this.onChangeNumber = this.onChangeNumber.bind(this);\n this.onChangeNumberSet = this.onChangeNumberSet.bind(this);\n this.onChangeComparator = this.onChangeComparator.bind(this);\n }\n\n onChangeNumber(event) {\n const comparator = this.numberFilterComparator.value;\n if (comparator === '') {\n return;\n }\n if (this.timeout) {\n clearTimeout(this.timeout);\n }\n const filterValue = event.target.value;\n this.timeout = setTimeout(() => {\n this.props.filterHandler({ number: filterValue, comparator }, Const.FILTER_TYPE.NUMBER);\n }, this.props.delay);\n }\n\n onChangeNumberSet(event) {\n const comparator = this.numberFilterComparator.value;\n const { value } = event.target;\n this.setState(() => { return { isPlaceholderSelected: (value === '') }; });\n if (comparator === '') {\n return;\n }\n this.props.filterHandler({ number: value, comparator }, Const.FILTER_TYPE.NUMBER);\n }\n\n onChangeComparator(event) {\n const value = this.numberFilter.value;\n const comparator = event.target.value;\n if (value === '') {\n return;\n }\n this.props.filterHandler({ number: value, comparator }, Const.FILTER_TYPE.NUMBER);\n }\n\n cleanFiltered() {\n const value = (this.props.defaultValue) ? this.props.defaultValue.number : '';\n const comparator = (this.props.defaultValue) ? this.props.defaultValue.comparator : '';\n this.setState(() => { return { isPlaceholderSelected: (value === '') }; });\n this.numberFilterComparator.value = comparator;\n this.numberFilter.value = value;\n this.props.filterHandler({ number: value, comparator }, Const.FILTER_TYPE.NUMBER);\n }\n\n applyFilter(filterObj) {\n const { number, comparator } = filterObj;\n this.setState(() => { return { isPlaceholderSelected: (number === '') }; });\n this.numberFilterComparator.value = comparator;\n this.numberFilter.value = number;\n this.props.filterHandler({ number, comparator }, Const.FILTER_TYPE.NUMBER);\n }\n\n getComparatorOptions() {\n const optionTags = [];\n const { withoutEmptyComparatorOption } = this.props;\n if (!withoutEmptyComparatorOption) {\n optionTags.push();\n }\n for (let i = 0; i < this.numberComparators.length; i++) {\n optionTags.push(\n \n );\n }\n return optionTags;\n }\n\n getNumberOptions() {\n const optionTags = [];\n const { options, withoutEmptyNumberOption } = this.props;\n if (!withoutEmptyNumberOption) {\n optionTags.push(\n \n );\n }\n for (let i = 0; i < options.length; i++) {\n optionTags.push();\n }\n return optionTags;\n }\n\n componentDidMount() {\n const comparator = this.numberFilterComparator.value;\n const number = this.numberFilter.value;\n if (comparator && number) {\n this.props.filterHandler({ number, comparator }, Const.FILTER_TYPE.NUMBER);\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this.timeout);\n }\n\n render() {\n const selectClass = classSet(\n 'select-filter', 'number-filter-input', 'form-control',\n { 'placeholder-selected': this.state.isPlaceholderSelected });\n\n return (\n \n \n {\n (this.props.options) ?\n :\n this.numberFilter = n }\n type='number'\n style={ this.props.style.number }\n className='number-filter-input form-control'\n placeholder={ this.props.placeholder || `Enter ${this.props.columnName}...` }\n onChange={ this.onChangeNumber }\n defaultValue={\n (this.props.defaultValue) ? this.props.defaultValue.number : ''\n } />\n }\n
\n );\n }\n}\n\nNumberFilter.propTypes = {\n filterHandler: PropTypes.func.isRequired,\n options: PropTypes.arrayOf(PropTypes.number),\n defaultValue: PropTypes.shape({\n number: PropTypes.number,\n comparator: PropTypes.oneOf(legalComparators)\n }),\n style: PropTypes.shape({\n number: PropTypes.oneOfType([ PropTypes.object ]),\n comparator: PropTypes.oneOfType([ PropTypes.object ])\n }),\n delay: PropTypes.number,\n /* eslint consistent-return: 0 */\n numberComparators: function(props, propName) {\n if (!props[propName]) {\n return;\n }\n for (let i = 0; i < props[propName].length; i++) {\n let comparatorIsValid = false;\n for (let j = 0; j < legalComparators.length; j++) {\n if (legalComparators[j] === props[propName][i]) {\n comparatorIsValid = true;\n break;\n }\n }\n if (!comparatorIsValid) {\n return new Error(`Number comparator provided is not supported.\n Use only ${legalComparators}`);\n }\n }\n },\n placeholder: PropTypes.string,\n columnName: PropTypes.any,\n withoutEmptyComparatorOption: PropTypes.bool,\n withoutEmptyNumberOption: PropTypes.bool\n};\n\nNumberFilter.defaultProps = {\n delay: Const.FILTER_DELAY,\n withoutEmptyComparatorOption: false,\n withoutEmptyNumberOption: false,\n style: {\n number: null,\n comparator: null\n }\n};\n\nexport default NumberFilter;\n\n\n\n// WEBPACK FOOTER //\n// src/filters/Number.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport ReactDOM from 'react-dom';\nimport Const from './Const';\nimport classSet from 'classnames';\nimport SelectRowHeaderColumn from './SelectRowHeaderColumn';\nimport ExpandRowHeaderColumn from './ExpandRowHeaderColumn';\nimport Utils from './util';\n\nclass Checkbox extends Component {\n componentDidMount() { this.update(this.props.checked); }\n componentWillReceiveProps(props) { this.update(props.checked); }\n update(checked) {\n ReactDOM.findDOMNode(this).indeterminate = checked === 'indeterminate';\n }\n render() {\n return (\n \n );\n }\n}\n\nfunction getSortOrder(sortList, field, enableSort) {\n if (!enableSort) return undefined;\n const result = sortList.filter(sortObj => {\n return sortObj.sortField === field;\n });\n if (result.length > 0) {\n return result[0].order;\n } else {\n return undefined;\n }\n}\n\nclass TableHeader extends Component {\n\n render() {\n const { sortIndicator, sortList, onSort, reset, version, condensed, bordered,\n expandedColumnHeaderComponent, noAnyExpand, toggleExpandAllChilds, expandAll\n } = this.props;\n const containerClasses = classSet(\n 'react-bs-container-header',\n 'table-header-wrapper',\n this.props.headerContainerClass);\n const customTableClasses = {\n 'table-bordered': bordered\n };\n if (condensed) {\n if (Utils.isBootstrap4(version)) customTableClasses['table-sm'] = true;\n else customTableClasses['table-condensed'] = true;\n }\n const tableClasses = classSet(\n 'table', 'table-hover', customTableClasses, this.props.tableHeaderClass);\n\n const rowCount = Math.max(...React.Children.map(this.props.children, elm =>\n (elm && elm.props.row) ? Number(elm.props.row) : 0\n ));\n\n const rows = [];\n let rowKey = 0;\n\n rows[0] = [];\n rows[0].push( [\n this.props.expandColumnVisible &&\n this.props.expandColumnBeforeSelectColumn &&\n \n ], [\n this.renderSelectRowHeader(rowCount + 1, rowKey++)\n ], [\n this.props.expandColumnVisible &&\n !this.props.expandColumnBeforeSelectColumn &&\n \n ]);\n\n React.Children.forEach(this.props.children, (elm) => {\n if (elm === null || elm === undefined) {\n // Skip null or undefined elements.\n return;\n }\n const { dataField, dataSort } = elm.props;\n const sort = getSortOrder(sortList, dataField, dataSort);\n const rowIndex = elm.props.row ? Number(elm.props.row) : 0;\n const rowSpan = elm.props.rowSpan ? Number(elm.props.rowSpan) : 1;\n if (rows[rowIndex] === undefined) {\n rows[rowIndex] = [];\n }\n if ((rowSpan + rowIndex) === (rowCount + 1)) {\n rows[rowIndex].push(React.cloneElement(\n elm, { reset, key: rowKey++, onSort, sort, sortIndicator, isOnlyHead: false, version }\n ));\n } else {\n rows[rowIndex].push(React.cloneElement(\n elm, { key: rowKey++, isOnlyHead: true, version }\n ));\n }\n });\n\n const trs = rows.map((row, indexRow)=>{\n return (\n \n { row }\n
\n );\n });\n\n return (\n this.container = node }\n className={ containerClasses }\n style={ this.props.style }>\n
\n { React.cloneElement(this.props.colGroups, { ref: node => this.headerGrp = node }) }\n this.header = node }>\n { trs }\n \n
\n
\n );\n }\n\n getHeaderColGrouop = () => {\n return this.headerGrp.childNodes;\n }\n\n renderSelectRowHeader(rowCount, rowKey) {\n if (this.props.hideSelectColumn) {\n return null;\n } else if (this.props.customComponent) {\n const CustomComponent = this.props.customComponent;\n return (\n \n \n \n );\n } else if (this.props.rowSelectType === Const.ROW_SELECT_SINGLE) {\n return ();\n } else if (this.props.rowSelectType === Const.ROW_SELECT_MULTI) {\n return (\n \n \n \n );\n } else {\n return null;\n }\n }\n}\nTableHeader.propTypes = {\n headerContainerClass: PropTypes.string,\n tableHeaderClass: PropTypes.string,\n style: PropTypes.object,\n rowSelectType: PropTypes.string,\n onSort: PropTypes.func,\n onSelectAllRow: PropTypes.func,\n sortList: PropTypes.array,\n hideSelectColumn: PropTypes.bool,\n bordered: PropTypes.bool,\n condensed: PropTypes.bool,\n isFiltered: PropTypes.bool,\n isSelectAll: PropTypes.oneOf([ true, 'indeterminate', false ]),\n sortIndicator: PropTypes.bool,\n customComponent: PropTypes.func,\n colGroups: PropTypes.element,\n reset: PropTypes.bool,\n expandColumnVisible: PropTypes.bool,\n expandColumnComponent: PropTypes.func,\n expandedColumnHeaderComponent: PropTypes.func,\n expandColumnBeforeSelectColumn: PropTypes.bool,\n version: PropTypes.string,\n noAnyExpand: PropTypes.bool,\n expandAll: PropTypes.bool,\n toggleExpandAllChilds: PropTypes.func\n};\n\nexport default TableHeader;\n\n\n\n// WEBPACK FOOTER //\n// src/TableHeader.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nclass SelectRowHeaderColumn extends Component {\n\n render() {\n return (\n \n { this.props.children }\n | \n );\n }\n}\nSelectRowHeaderColumn.propTypes = {\n children: PropTypes.node,\n rowCount: PropTypes.number\n};\nexport default SelectRowHeaderColumn;\n\n\n\n// WEBPACK FOOTER //\n// src/SelectRowHeaderColumn.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nclass ExpandRowHeaderColumn extends Component {\n\n constructor(props) {\n super(props);\n this.toggleExpandAllChilds = this.toggleExpandAllChilds.bind(this);\n }\n\n toggleExpandAllChilds() {\n this.props.toggleExpandAllChilds();\n }\n\n render() {\n const {\n expandedColumnHeaderComponent,\n noAnyExpand,\n expandAll\n } = this.props;\n const expandedHeaderComponent = noAnyExpand ?\n :\n ;\n const ExpandedColumnHeaderComponent = expandedColumnHeaderComponent;\n\n return (\n \n {\n expandAll ? \n { expandedColumnHeaderComponent ?\n : expandedHeaderComponent }\n : null\n }\n | \n );\n }\n}\nExpandRowHeaderColumn.propTypes = {\n expandedColumnHeaderComponent: PropTypes.func,\n rowCount: PropTypes.number,\n noAnyExpand: PropTypes.bool,\n expandAll: PropTypes.bool,\n toggleExpandAllChilds: PropTypes.func\n};\nexport default ExpandRowHeaderColumn;\n\n\n\n// WEBPACK FOOTER //\n// src/ExpandRowHeaderColumn.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport classSet from 'classnames';\n\nclass TableFooter extends Component {\n\n render() {\n const { hideSelectColumn, expandColumnVisible } = this.props;\n const containerClasses = classSet('react-bs-container-footer', 'table-footer-wrapper');\n const tableClasses = classSet('table', 'table-hover', {\n 'table-bordered': this.props.bordered,\n 'table-condensed': this.props.condensed\n }, this.props.tableFooterClass);\n return (\n this.container = node }\n className={ containerClasses }\n style={ this.props.style } >\n {\n this.props.children.map((footerItem, footerItemIndex) => {\n return (\n
\n \n { React.cloneElement(this.props.colGroups) }\n \n this.footer = node }>\n { hideSelectColumn ? null : this.renderSelectionOrExpandCol() }\n { !expandColumnVisible ? null : this.renderSelectionOrExpandCol() }\n {\n this.props.columns.map((columnItem, colIndex) => {\n if ( !columnItem.hidden ) {\n const footerObj = footerItem.filter((item) => {\n return item.columnIndex === colIndex;\n });\n let footerData;\n let thAlignment = 'left';\n if (footerObj.length) {\n thAlignment = footerObj[0].align;\n if (footerObj[0].formatter) {\n footerData = footerObj[0].formatter(\n this.props.footerFormatterReturnData\n );\n } else {\n footerData = footerObj[0].label;\n }\n } else {\n footerData = '';\n }\n return (\n \n {\n footerData\n }\n | \n );\n }\n })\n }\n
\n \n
\n \n );\n })\n }\n
\n );\n }\n\n renderSelectionOrExpandCol() {\n return ( | );\n }\n}\nTableFooter.propTypes = {\n tableHeaderClass: PropTypes.string,\n style: PropTypes.object,\n hideSelectColumn: PropTypes.bool,\n expandColumnVisible: PropTypes.bool,\n bordered: PropTypes.bool,\n condensed: PropTypes.bool,\n isFiltered: PropTypes.bool,\n sortIndicator: PropTypes.bool\n};\n\nexport default TableFooter;\n\n\n\n// WEBPACK FOOTER //\n// src/TableFooter.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Utils from './util';\nimport Const from './Const';\nimport TableRow from './TableRow';\nimport TableColumn from './TableColumn';\nimport TableEditColumn from './TableEditColumn';\nimport classSet from 'classnames';\nimport ExpandComponent from './ExpandComponent';\n\nclass TableBody extends Component {\n constructor(props) {\n super(props);\n this.state = {\n currEditCell: null\n };\n }\n\n render() {\n const { cellEdit, beforeShowError, x, y, keyBoardNav, trStyle, version } = this.props;\n const customTableClasses = {\n 'table-striped': this.props.striped,\n 'table-bordered': this.props.bordered,\n 'table-hover': this.props.hover\n };\n if (this.props.condensed) {\n if (Utils.isBootstrap4(version)) customTableClasses['table-sm'] = true;\n else customTableClasses['table-condensed'] = true;\n }\n const tableClasses = classSet('table', customTableClasses, this.props.tableBodyClass);\n\n const noneditableRows = (cellEdit.nonEditableRows && cellEdit.nonEditableRows()) || [];\n const unselectable = this.props.selectRow.unselectable || [];\n const isSelectRowDefined = Utils.isSelectRowDefined(this.props.selectRow.mode);\n const tableHeader = Utils.renderColGroup(this.props.columns,\n this.props.selectRow, this.props.expandColumnOptions, version);\n const inputType = this.props.selectRow.mode === Const.ROW_SELECT_SINGLE ? 'radio' : 'checkbox';\n const CustomComponent = this.props.selectRow.customComponent;\n const enableKeyBoardNav = (keyBoardNav === true || typeof keyBoardNav === 'object');\n const customEditAndNavStyle = typeof keyBoardNav === 'object' ?\n keyBoardNav.customStyleOnEditCell :\n null;\n const customNavStyle = typeof keyBoardNav === 'object' ?\n keyBoardNav.customStyle :\n null;\n const ExpandColumnCustomComponent = this.props.expandColumnOptions.expandColumnComponent;\n let expandColSpan = this.props.columns.filter(col => col && !col.hidden).length;\n if (isSelectRowDefined && !this.props.selectRow.hideSelectColumn) {\n expandColSpan += 1;\n }\n let tabIndex = 1;\n if (this.props.expandColumnOptions.expandColumnVisible) {\n expandColSpan += 1;\n }\n\n let tableRows = this.props.data.map(function(data, r) {\n const tableColumns = this.props.columns.filter(_ => _ != null).map(function(column, i) {\n const fieldValue = data[column.name];\n const isFocusCell = r === y && i === x;\n if (column.name !== this.props.keyField && // Key field can't be edit\n column.editable && // column is editable? default is true, user can set it false\n column.editable.readOnly !== true &&\n this.state.currEditCell !== null &&\n this.state.currEditCell.rid === r &&\n this.state.currEditCell.cid === i &&\n noneditableRows.indexOf(data[this.props.keyField]) === -1) {\n let editable = column.editable;\n const format = column.format ? function(value) {\n return column.format(value, data, column.formatExtraData, r).replace(/<.*?>/g, '');\n } : false;\n if (Utils.isFunction(column.editable)) {\n editable = column.editable(fieldValue, data, r, i);\n }\n\n return (\n \n );\n } else {\n // add by bluespring for className customize\n let formattedValue;\n let columnChild = fieldValue && fieldValue.toString();\n let columnTitle = null;\n let tdClassName = column.className;\n let tdStyles = column.style;\n if (Utils.isFunction(column.className)) {\n tdClassName = column.className(fieldValue, data, r, i);\n }\n\n if (Utils.isFunction(column.style)) {\n tdStyles = column.style(fieldValue, data, r, i);\n }\n\n if (typeof column.format !== 'undefined') {\n formattedValue = column.format(fieldValue, data, column.formatExtraData, r);\n if (!React.isValidElement(formattedValue)) {\n columnChild = (\n \n );\n } else {\n columnChild = formattedValue;\n }\n }\n if (Utils.isFunction(column.columnTitle)) {\n columnTitle = column.columnTitle(fieldValue, data, r, i);\n } else if (typeof column.columnTitle === 'string') {\n columnTitle = column.columnTitle;\n } else if (column.columnTitle) {\n if (formattedValue) columnTitle = formattedValue.toString();\n else if (fieldValue) columnTitle = fieldValue.toString();\n }\n return (\n \n { columnChild }\n \n );\n }\n }, this);\n const key = data[this.props.keyField];\n const disable = unselectable.indexOf(key) !== -1;\n const selected = this.props.selectedRowKeys.indexOf(key) !== -1;\n const selectRowColumn = isSelectRowDefined && !this.props.selectRow.hideSelectColumn ?\n this.renderSelectRowColumn(selected, inputType, disable, CustomComponent, r, data) : null;\n const expandedRowColumn = this.renderExpandRowColumn(\n this.props.expandableRow && this.props.expandableRow(data),\n this.props.expanding.indexOf(key) > -1,\n ExpandColumnCustomComponent, r\n );\n const haveExpandContent = this.props.expandableRow && this.props.expandableRow(data);\n const isExpanding = haveExpandContent && this.props.expanding.indexOf(key) > -1;\n const { hideRowOnExpand } = this.props;\n // add by bluespring for className customize\n let trClassName = this.props.trClassName;\n if (Utils.isFunction(this.props.trClassName)) {\n trClassName = this.props.trClassName(data, r);\n }\n if (isExpanding && this.props.expandParentClass) {\n trClassName += Utils.isFunction(this.props.expandParentClass) ?\n ` ${this.props.expandParentClass(data, r)}` :\n ` ${this.props.expandParentClass}`;\n }\n const result = [ \n { this.props.expandColumnOptions.expandColumnVisible &&\n this.props.expandColumnOptions.expandColumnBeforeSelectColumn &&\n expandedRowColumn }\n { selectRowColumn }\n { this.props.expandColumnOptions.expandColumnVisible &&\n !this.props.expandColumnOptions.expandColumnBeforeSelectColumn &&\n expandedRowColumn }\n { tableColumns }\n ];\n\n if (haveExpandContent) {\n const expandBodyClass = Utils.isFunction(this.props.expandBodyClass) ?\n this.props.expandBodyClass(data, r, isExpanding) :\n this.props.expandBodyClass;\n result.push(\n \n { this.props.expandComponent(data) }\n \n );\n }\n return (result);\n }, this);\n\n if (tableRows.length === 0 && !this.props.withoutNoDataText) {\n const colSpan = this.props.columns.filter(c => !c.hidden).length\n + ((isSelectRowDefined && !this.props.selectRow.hideSelectColumn) ? 1 : 0)\n + (this.props.expandColumnOptions.expandColumnVisible ? 1 : 0);\n tableRows = [\n \n \n { this.props.noDataText || Const.NO_DATA_TEXT }\n | \n \n ];\n }\n\n return (\n this.container = node }\n className={ classSet('react-bs-container-body', this.props.bodyContainerClass) }\n style={ this.props.style }>\n
\n { React.cloneElement(tableHeader, { ref: node => this.header = node }) }\n this.tbody = node }>\n { tableRows }\n \n
\n
\n );\n }\n\n handleCellKeyDown = (e, lastEditCell) => {\n e.preventDefault();\n const { keyBoardNav, onNavigateCell, cellEdit, selectedRowKeys } = this.props;\n let offset;\n if (e.keyCode === 37) {\n offset = { x: -1, y: 0 };\n } else if (e.keyCode === 38) {\n offset = { x: 0, y: -1 };\n } else if (e.keyCode === 39 || e.keyCode === 9) {\n offset = { x: 1, y: 0 };\n if (e.keyCode === 9 && lastEditCell) {\n offset = {\n ...offset,\n lastEditCell\n };\n }\n } else if (e.keyCode === 40) {\n offset = { x: 0, y: 1 };\n } else if (e.keyCode === 13) {\n const rowIndex = e.target.parentElement.rowIndex + 1;\n const enterToEdit = typeof keyBoardNav === 'object' ?\n keyBoardNav.enterToEdit :\n false;\n const enterToExpand = typeof keyBoardNav === 'object' ?\n keyBoardNav.enterToExpand :\n false;\n const enterToSelect = typeof keyBoardNav === 'object' ?\n keyBoardNav.enterToSelect :\n false;\n\n if (cellEdit && enterToEdit) {\n this.handleEditCell(rowIndex, e.currentTarget.cellIndex, '', e);\n }\n\n if (enterToExpand) {\n this.handleClickCell(e, this.props.y + 1, this.props.x);\n }\n\n if (enterToSelect) {\n const isSelected = selectedRowKeys.indexOf(\n this.props.data[rowIndex - 1][this.props.keyField]) !== -1;\n this.handleSelectRow(rowIndex, !isSelected, e);\n }\n }\n if (offset && keyBoardNav) {\n onNavigateCell(offset);\n }\n }\n\n handleRowMouseOut = (rowIndex, event) => {\n const targetRow = this.props.data[rowIndex];\n this.props.onRowMouseOut(targetRow, event);\n }\n\n handleRowMouseOver = (rowIndex, event) => {\n const targetRow = this.props.data[rowIndex];\n this.props.onRowMouseOver(targetRow, event);\n }\n\n handleRowClick = (rowIndex, cellIndex, event) => {\n const { onRowClick, selectRow } = this.props;\n if (Utils.isSelectRowDefined(selectRow.mode)) cellIndex--;\n if (this._isExpandColumnVisible()) cellIndex--;\n onRowClick(this.props.data[rowIndex - 1], rowIndex - 1, cellIndex, event);\n }\n\n handleRowDoubleClick = (rowIndex, event) => {\n const { onRowDoubleClick } = this.props;\n const targetRow = this.props.data[rowIndex];\n onRowDoubleClick(targetRow, event);\n }\n\n handleSelectRow = (rowIndex, isSelected, e) => {\n let selectedRow;\n const { data, onSelectRow } = this.props;\n data.forEach((row, i) => {\n if (i === rowIndex - 1) {\n selectedRow = row;\n return false;\n }\n });\n onSelectRow(selectedRow, isSelected, e, rowIndex - 1);\n }\n\n handleSelectRowColumChange = (e, rowIndex) => {\n if (!this.props.selectRow.clickToSelect ||\n !this.props.selectRow.clickToSelectAndEditCell) {\n this.handleSelectRow(\n rowIndex + 1,\n e.currentTarget.checked,\n e);\n }\n }\n\n handleClickCell = (event, rowIndex, columnIndex = -1) => {\n const {\n columns,\n keyField,\n expandBy,\n expandableRow,\n selectRow: {\n mode,\n clickToExpand,\n hideSelectColumn\n },\n onlyOneExpanding\n } = this.props;\n const isSelectRowDefined = Utils.isSelectRowDefined(mode);\n const selectRowAndExpand = isSelectRowDefined && !clickToExpand ? false : true;\n columnIndex = isSelectRowDefined && !hideSelectColumn ? columnIndex - 1 : columnIndex;\n columnIndex = this._isExpandColumnVisible() ? columnIndex - 1 : columnIndex;\n if (expandableRow &&\n selectRowAndExpand &&\n (expandBy === Const.EXPAND_BY_ROW ||\n /* Below will allow expanding trigger by clicking on selection column\n if configure as expanding by column */\n (expandBy === Const.EXPAND_BY_COL && columnIndex < 0) ||\n (expandBy === Const.EXPAND_BY_COL && columns[columnIndex].expandable))) {\n let expanding = this.props.expanding;\n const rowKey = this.props.data[rowIndex - 1][keyField];\n const isRowExpanding = expanding.indexOf(rowKey) > -1;\n\n if (isRowExpanding) { // collapse\n expanding = expanding.filter(k => k !== rowKey);\n } else { // expand\n if (onlyOneExpanding) expanding = [ rowKey ];\n else expanding.push(rowKey);\n }\n this.props.onExpand(expanding, rowKey, isRowExpanding, event);\n }\n }\n\n handleEditCell = (rowIndex, columnIndex, action, e) => {\n const { selectRow } = this.props;\n const defineSelectRow = Utils.isSelectRowDefined(selectRow.mode);\n const expandColumnVisible = this._isExpandColumnVisible();\n if (defineSelectRow) {\n columnIndex--;\n if (selectRow.hideSelectColumn) columnIndex++;\n }\n if (expandColumnVisible) {\n columnIndex--;\n }\n rowIndex--;\n\n if (action === 'tab') {\n if (defineSelectRow && !selectRow.hideSelectColumn) columnIndex++;\n if (expandColumnVisible) columnIndex++;\n this.handleCompleteEditCell(e.target.value, rowIndex, columnIndex - 1);\n if (columnIndex >= this.props.columns.length) {\n this.handleCellKeyDown(e, true);\n } else {\n this.handleCellKeyDown(e);\n }\n const { nextRIndex, nextCIndex } = this.nextEditableCell(rowIndex, columnIndex);\n rowIndex = nextRIndex;\n columnIndex = nextCIndex;\n }\n\n const stateObj = {\n currEditCell: {\n rid: rowIndex,\n cid: columnIndex\n }\n };\n\n if (this.props.selectRow.clickToSelectAndEditCell &&\n this.props.cellEdit.mode !== Const.CELL_EDIT_DBCLICK) {\n const selected = this.props.selectedRowKeys.indexOf(\n this.props.data[rowIndex][this.props.keyField]) !== -1;\n this.handleSelectRow(rowIndex + 1, !selected, e);\n }\n this.setState(() => stateObj);\n }\n\n nextEditableCell = (rIndex, cIndex) => {\n const { keyField } = this.props;\n let nextRIndex = rIndex;\n let nextCIndex = cIndex;\n let row;\n let column;\n do {\n if (nextCIndex >= this.props.columns.length) {\n nextRIndex++;\n nextCIndex = 0;\n }\n row = this.props.data[nextRIndex];\n column = this.props.columns[nextCIndex];\n if (!row) break;\n let editable = column.editable;\n if (Utils.isFunction(column.editable)) {\n editable = column.editable(column, row, nextRIndex, nextCIndex);\n }\n if (editable && editable.readOnly !== true &&\n !column.hidden && keyField !== column.name) {\n break;\n } else {\n nextCIndex++;\n }\n } while (row);\n return { nextRIndex, nextCIndex };\n }\n\n handleCompleteEditCell = (newVal, rowIndex, columnIndex) => {\n if (newVal !== null) {\n const result = this.props.onEditCell(newVal, rowIndex, columnIndex);\n if (result !== Const.AWAIT_BEFORE_CELL_EDIT) {\n this.setState(() => { return { currEditCell: null }; });\n }\n } else {\n this.setState(() => { return { currEditCell: null }; });\n }\n }\n\n cancelEditCell = () => {\n this.setState(() => { return { currEditCell: null }; });\n }\n\n handleClickonSelectColumn = (e, isSelect, rowIndex, row) => {\n e.stopPropagation();\n if (e.target.tagName === 'TD' &&\n (this.props.selectRow.clickToSelect || this.props.selectRow.clickToSelectAndEditCell)) {\n const unselectable = this.props.selectRow.unselectable || [];\n if (unselectable.indexOf(row[this.props.keyField]) === -1) {\n this.handleSelectRow(rowIndex + 1, isSelect, e);\n this.handleClickCell(e, rowIndex + 1);\n }\n }\n }\n\n renderSelectRowColumn(selected, inputType, disabled,\n CustomComponent = null, rowIndex = null, row) {\n return (\n {\n this.handleClickonSelectColumn(e, !selected, rowIndex, row);\n } } style={ { textAlign: 'center' } }>\n { CustomComponent ?\n this.handleSelectRowColumChange(e, rowIndex) }/> :\n this.handleSelectRowColumChange(e, rowIndex) }/>\n }\n | \n );\n }\n\n renderExpandRowColumn(isExpandableRow, isExpanded, CustomComponent, rowIndex = null) {\n let content = null;\n if (CustomComponent) {\n content = ();\n } else if (isExpandableRow) {\n content = (isExpanded ? () :\n () );\n } else {\n content = ' ';\n }\n\n return (\n this.handleClickCell(e, rowIndex + 1) }>\n { content }\n | \n );\n }\n\n _isExpandColumnVisible() {\n return this.props.expandColumnOptions.expandColumnVisible;\n }\n\n getHeaderColGrouop = () => {\n return this.header.childNodes;\n }\n}\nTableBody.propTypes = {\n version: PropTypes.string,\n data: PropTypes.array,\n columns: PropTypes.array,\n striped: PropTypes.bool,\n bordered: PropTypes.bool,\n hover: PropTypes.bool,\n condensed: PropTypes.bool,\n keyField: PropTypes.string,\n selectedRowKeys: PropTypes.array,\n onRowClick: PropTypes.func,\n onRowDoubleClick: PropTypes.func,\n onSelectRow: PropTypes.func,\n noDataText: PropTypes.oneOfType([ PropTypes.string, PropTypes.object ]),\n withoutNoDataText: PropTypes.bool,\n style: PropTypes.object,\n tableBodyClass: PropTypes.string,\n bodyContainerClass: PropTypes.string,\n expandableRow: PropTypes.func,\n expandComponent: PropTypes.func,\n expandRowBgColor: PropTypes.string,\n expandBy: PropTypes.string,\n expanding: PropTypes.array,\n onExpand: PropTypes.func,\n expandBodyClass: PropTypes.oneOfType([ PropTypes.string, PropTypes.func ]),\n expandParentClass: PropTypes.oneOfType([ PropTypes.string, PropTypes.func ]),\n onlyOneExpanding: PropTypes.bool,\n beforeShowError: PropTypes.func,\n keyBoardNav: PropTypes.oneOfType([ PropTypes.bool, PropTypes.object ]),\n x: PropTypes.number,\n y: PropTypes.number,\n onNavigateCell: PropTypes.func,\n withoutTabIndex: PropTypes.bool,\n hideRowOnExpand: PropTypes.bool\n};\nexport default TableBody;\n\n\n\n// WEBPACK FOOTER //\n// src/TableBody.js","/* eslint no-nested-ternary: 0 */\nimport classSet from 'classnames';\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Utils from './util';\n\nclass TableRow extends Component {\n\n constructor(props) {\n super(props);\n this.clickNum = 0;\n }\n\n rowClick = e => {\n const rowIndex = this.props.index + 1;\n const cellIndex = e.target.cellIndex;\n if (this.props.onRowClick) this.props.onRowClick(rowIndex, cellIndex, e);\n const {\n selectRow, unselectableRow, isSelected, onSelectRow, onExpandRow, dbClickToEdit\n } = this.props;\n if (selectRow) {\n if (selectRow.clickToSelect && !unselectableRow) {\n onSelectRow(rowIndex, !isSelected, e);\n } else if (selectRow.clickToSelectAndEditCell && !unselectableRow) {\n this.clickNum++;\n /** if clickToSelectAndEditCell is enabled,\n * there should be a delay to prevent a selection changed when\n * user dblick to edit cell on same row but different cell\n **/\n setTimeout(() => {\n if (this.clickNum === 1) {\n onSelectRow(rowIndex, !isSelected, e);\n onExpandRow(e, rowIndex, cellIndex);\n }\n this.clickNum = 0;\n }, 200);\n } else {\n if (dbClickToEdit) {\n this.expandRow(e, rowIndex, cellIndex);\n }\n }\n }\n }\n\n expandRow = (event, rowIndex, cellIndex) => {\n this.clickNum++;\n setTimeout(() => {\n if (this.clickNum === 1) {\n this.props.onExpandRow(event, rowIndex, cellIndex);\n }\n this.clickNum = 0;\n }, 200);\n }\n\n rowDoubleClick = e => {\n if (e.target.tagName !== 'INPUT' &&\n e.target.tagName !== 'SELECT' &&\n e.target.tagName !== 'TEXTAREA') {\n if (this.props.onRowDoubleClick) {\n this.props.onRowDoubleClick(this.props.index, e);\n }\n }\n }\n\n rowMouseOut = e => {\n const rowIndex = this.props.index;\n if (this.props.onRowMouseOut) {\n this.props.onRowMouseOut(rowIndex, e);\n }\n }\n\n rowMouseOver = e => {\n const rowIndex = this.props.index;\n if (this.props.onRowMouseOver) {\n this.props.onRowMouseOver(rowIndex, e);\n }\n }\n\n render() {\n this.clickNum = 0;\n const { selectRow, row, isSelected, className, index, hidden } = this.props;\n let { style } = this.props;\n let backgroundColor = null;\n let selectRowClass = null;\n\n if (selectRow) {\n backgroundColor = Utils.isFunction(selectRow.bgColor) ?\n selectRow.bgColor(row, isSelected) : ( isSelected ? selectRow.bgColor : null);\n\n selectRowClass = Utils.isFunction(selectRow.className) ?\n selectRow.className(row, isSelected) : ( isSelected ? selectRow.className : null);\n }\n\n if (Utils.isFunction(style)) {\n style = style(row, index);\n } else {\n style = { ...style } || {};\n }\n // the bgcolor of row selection always overwrite the bgcolor defined by global.\n if (style && backgroundColor && isSelected) {\n style.backgroundColor = backgroundColor;\n }\n const trCss = {\n style: { ...style },\n className: classSet(selectRowClass, className)\n };\n\n return (\n { this.props.children }
\n );\n }\n}\nTableRow.propTypes = {\n index: PropTypes.number,\n row: PropTypes.any,\n style: PropTypes.any,\n isSelected: PropTypes.bool,\n enableCellEdit: PropTypes.bool,\n onRowClick: PropTypes.func,\n onRowDoubleClick: PropTypes.func,\n onSelectRow: PropTypes.func,\n onExpandRow: PropTypes.func,\n onRowMouseOut: PropTypes.func,\n onRowMouseOver: PropTypes.func,\n unselectableRow: PropTypes.bool,\n hidden: PropTypes.bool\n};\nTableRow.defaultProps = {\n onRowClick: undefined,\n onRowDoubleClick: undefined,\n hidden: false\n};\nexport default TableRow;\n\n\n\n// WEBPACK FOOTER //\n// src/TableRow.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport ReactDOM from 'react-dom';\nimport Const from './Const';\nimport Util from './util';\n\nclass TableColumn extends Component {\n\n constructor(props) {\n super(props);\n }\n /* eslint no-unused-vars: [0, { \"args\": \"after-used\" }] */\n shouldComponentUpdate(nextProps, nextState) {\n const { children } = this.props;\n let shouldUpdated = this.props.width !== nextProps.width\n || this.props.className !== nextProps.className\n || this.props.hidden !== nextProps.hidden\n || this.props.dataAlign !== nextProps.dataAlign\n || this.props.isFocus !== nextProps.isFocus\n || typeof children !== typeof nextProps.children\n || ('' + this.props.onEdit).toString() !== ('' + nextProps.onEdit).toString();\n\n if (shouldUpdated) {\n return shouldUpdated;\n }\n\n if (typeof children === 'object' && children !== null && children.props !== null) {\n if (children.props.type === 'checkbox' || children.props.type === 'radio') {\n shouldUpdated = shouldUpdated ||\n children.props.type !== nextProps.children.props.type ||\n children.props.checked !== nextProps.children.props.checked ||\n children.props.disabled !== nextProps.children.props.disabled;\n } else {\n shouldUpdated = true;\n }\n } else {\n shouldUpdated = shouldUpdated || children !== nextProps.children;\n }\n\n if (shouldUpdated) {\n return shouldUpdated;\n }\n\n if (!(this.props.cellEdit && nextProps.cellEdit)) {\n return false;\n } else {\n return shouldUpdated\n || this.props.cellEdit.mode !== nextProps.cellEdit.mode;\n }\n }\n\n componentDidMount() {\n const dom = ReactDOM.findDOMNode(this);\n if (this.props.isFocus) {\n dom.focus();\n } else {\n dom.blur();\n }\n }\n\n componentDidUpdate() {\n const dom = ReactDOM.findDOMNode(this);\n if (this.props.isFocus) {\n dom.focus();\n } else {\n dom.blur();\n }\n }\n\n handleCellEdit = e => {\n try {\n if (this.props.cellEdit.mode === Const.CELL_EDIT_DBCLICK) {\n if (document.selection && document.selection.empty) {\n document.selection.empty();\n } else if (window.getSelection) {\n const sel = window.getSelection();\n sel.removeAllRanges();\n }\n }\n } catch (err) {} /* eslint no-empty: 0 */\n this.props.onEdit(\n this.props.rIndex + 1, e.currentTarget.cellIndex, e);\n if (this.props.cellEdit.mode !== Const.CELL_EDIT_DBCLICK) {\n this.props.onClick(e, this.props.rIndex + 1, e.currentTarget.cellIndex);\n }\n }\n\n handleCellClick = e => {\n const { onClick, rIndex } = this.props;\n if (onClick) {\n onClick(e, rIndex + 1, e.currentTarget.cellIndex);\n }\n }\n\n handleKeyDown = e => {\n if (this.props.keyBoardNav) {\n this.props.onKeyDown(e);\n }\n }\n\n render() {\n const {\n children,\n columnTitle,\n dataAlign,\n hidden,\n cellEdit,\n attrs,\n style,\n isFocus,\n keyBoardNav,\n tabIndex,\n customNavStyle,\n withoutTabIndex,\n row\n } = this.props;\n\n let { className } = this.props;\n\n let tdStyle = {\n textAlign: dataAlign,\n display: hidden ? 'none' : null,\n ...style\n };\n\n const opts = {};\n\n if (cellEdit) {\n if (cellEdit.mode === Const.CELL_EDIT_CLICK) {\n opts.onClick = this.handleCellEdit;\n } else if (cellEdit.mode === Const.CELL_EDIT_DBCLICK) {\n opts.onDoubleClick = this.handleCellEdit;\n } else {\n opts.onClick = this.handleCellClick;\n }\n }\n\n if (keyBoardNav && isFocus) {\n opts.onKeyDown = this.handleKeyDown;\n }\n\n if (isFocus) {\n if (customNavStyle) {\n const cusmtStyle = Util.isFunction(customNavStyle) ?\n customNavStyle(children, row) : customNavStyle;\n tdStyle = {\n ...tdStyle,\n ...cusmtStyle\n };\n } else {\n className = `${className} default-focus-cell`;\n }\n }\n\n const attr = {};\n if (!withoutTabIndex) attr.tabIndex = tabIndex;\n return (\n \n { typeof children === 'boolean' ? children.toString() : children }\n | \n );\n }\n}\nTableColumn.propTypes = {\n rIndex: PropTypes.number,\n dataAlign: PropTypes.string,\n hidden: PropTypes.bool,\n className: PropTypes.string,\n columnTitle: PropTypes.string,\n children: PropTypes.node,\n onClick: PropTypes.func,\n attrs: PropTypes.object,\n style: PropTypes.object,\n isFocus: PropTypes.bool,\n onKeyDown: PropTypes.func,\n tabIndex: PropTypes.string,\n withoutTabIndex: PropTypes.bool,\n keyBoardNav: PropTypes.oneOfType([ PropTypes.bool, PropTypes.object ]),\n customNavStyle: PropTypes.oneOfType([ PropTypes.func, PropTypes.object ]),\n row: PropTypes.any /* only used on custom styling for navigation */\n};\n\nTableColumn.defaultProps = {\n dataAlign: 'left',\n withoutTabIndex: false,\n hidden: false,\n className: '',\n isFocus: false,\n keyBoardNav: false\n};\nexport default TableColumn;\n\n\n\n// WEBPACK FOOTER //\n// src/TableColumn.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport ReactDOM from 'react-dom';\nimport editor from './Editor';\nimport { notice } from './Notification.js';\nimport classSet from 'classnames';\nimport Util from './util';\n\nclass TableEditColumn extends Component {\n constructor(props) {\n super(props);\n this.timeouteClear = 0;\n const { fieldValue, row, className } = this.props;\n this.focusInEditor = this.focusInEditor.bind(this);\n this.state = {\n shakeEditor: false,\n className: Util.isFunction(className) ? className(fieldValue, row) : className\n };\n }\n\n valueShortCircuit(value) {\n return value === null || typeof value === 'undefined' ? '' : value;\n }\n\n handleKeyPress = e => {\n if (e.keyCode === 13 || e.keyCode === 9) {\n // Pressed ENTER or TAB\n const value = e.currentTarget.type === 'checkbox' ?\n this._getCheckBoxValue(e) : e.currentTarget.value;\n\n if ((e.keyCode === 9 && this.props.blurToSave) ||\n (!this.validator(value))) {\n return;\n }\n\n if (e.keyCode === 13) {\n this.props.completeEdit(value, this.props.rowIndex, this.props.colIndex);\n } else {\n this.props.onTab(this.props.rowIndex + 1, this.props.colIndex + 1, 'tab', e);\n e.preventDefault();\n }\n } else if (e.keyCode === 27) {\n this.props.completeEdit(\n null, this.props.rowIndex, this.props.colIndex);\n } else if (e.type === 'click' && !this.props.blurToSave) { // textarea click save button\n const value = e.target.parentElement.firstChild.value;\n if (!this.validator(value)) {\n return;\n }\n this.props.completeEdit(\n value, this.props.rowIndex, this.props.colIndex);\n }\n }\n\n handleBlur = e => {\n e.stopPropagation();\n if (this.props.blurToSave) {\n const value = e.currentTarget.type === 'checkbox' ?\n this._getCheckBoxValue(e) : e.currentTarget.value;\n if (!this.validator(value)) {\n return false;\n }\n this.props.completeEdit(\n value, this.props.rowIndex, this.props.colIndex);\n } else if (this.props.blurToEscape) {\n this.props.completeEdit(null, this.props.rowIndex, this.props.colIndex);\n }\n }\n\n handleCustomUpdate = value => {\n if (!this.validator(value)) {\n return;\n }\n this.props.completeEdit(value, this.props.rowIndex, this.props.colIndex);\n }\n\n // modified by iuculanop\n // BEGIN\n validator(value) {\n const ts = this;\n let valid = true;\n if (ts.props.editable.validator) {\n const checkVal = ts.props.editable.validator(value, this.props.row);\n const responseType = typeof checkVal;\n if (responseType !== 'object' && checkVal !== true) {\n valid = false;\n this.notifyToastr('error', checkVal, '');\n } else if (responseType === 'object' && checkVal.isValid !== true) {\n valid = false;\n this.notifyToastr(checkVal.notification.type,\n checkVal.notification.msg,\n checkVal.notification.title);\n }\n if (!valid) {\n // animate input\n ts.clearTimeout();\n const { invalidColumnClassName, row } = this.props;\n const className = Util.isFunction(invalidColumnClassName) ?\n invalidColumnClassName(value, row) :\n invalidColumnClassName;\n ts.setState({ shakeEditor: true, className });\n ts.timeouteClear = setTimeout(() => {\n ts.setState({ shakeEditor: false });\n }, 300);\n this.focusInEditor();\n return valid;\n }\n }\n return valid;\n }\n // END\n\n notifyToastr = (type, message, title) => {\n let toastr = true;\n const { beforeShowError } = this.props;\n if (beforeShowError) {\n toastr = beforeShowError(type, message, title);\n }\n if (toastr) {\n notice(type, message, title);\n }\n }\n\n clearTimeout() {\n if (this.timeouteClear !== 0) {\n clearTimeout(this.timeouteClear);\n this.timeouteClear = 0;\n }\n }\n\n componentDidMount() {\n this.focusInEditor();\n const dom = ReactDOM.findDOMNode(this);\n if (this.props.isFocus) {\n dom.focus();\n } else {\n dom.blur();\n }\n }\n\n componentDidUpdate() {\n const dom = ReactDOM.findDOMNode(this);\n if (this.props.isFocus) {\n dom.focus();\n } else {\n dom.blur();\n }\n }\n\n componentWillUnmount() {\n this.clearTimeout();\n }\n\n focusInEditor() {\n if (this.inputRef && Util.isFunction(this.inputRef.focus)) {\n this.inputRef.focus();\n }\n }\n\n handleClick = e => {\n if (e.target.tagName !== 'TD') {\n e.stopPropagation();\n }\n }\n\n getInputRef = userRef => ref => {\n this.inputRef = ref;\n if (Util.isFunction(userRef)) {\n userRef(ref);\n } else if (typeof userRef === 'string') {\n throw new Error('Ref must be a function');\n }\n }\n\n getHandleKeyPress = customHandler => e => {\n this.handleKeyPress(e);\n if (Util.isFunction(customHandler)) {\n customHandler(e);\n }\n }\n\n getHandleBlur = customHandler => e => {\n this.handleBlur(e);\n if (Util.isFunction(customHandler)) {\n customHandler(e);\n }\n }\n\n render() {\n const {\n editable,\n format,\n customEditor,\n isFocus,\n customStyleWithNav,\n row,\n attrs\n } = this.props;\n const { shakeEditor } = this.state;\n const attr = {\n ...editable.attrs,\n ref: this.getInputRef(editable.attrs && editable.attrs.ref),\n onKeyDown: this.getHandleKeyPress(editable.attrs && editable.attrs.onKeyDown),\n onBlur: this.getHandleBlur(editable.attrs && editable.attrs.onBlur)\n };\n let style = { position: 'relative' };\n let { fieldValue } = this.props;\n let { className } = this.state;\n\n if (editable.placeholder) {\n attr.placeholder = editable.placeholder;\n /* eslint-disable no-console */\n console.warn(\n 'Setting editable.placeholder is deprecated. Use editable.attrs to set input attributes');\n /* eslint-enable no-console */\n }\n\n const editorClass = classSet({ 'animated': shakeEditor, 'shake': shakeEditor });\n fieldValue = fieldValue === 0 ? '0' : fieldValue;\n let cellEditor;\n if (customEditor) {\n const customEditorProps = {\n row,\n ...attr,\n defaultValue: this.valueShortCircuit(fieldValue),\n ...customEditor.customEditorParameters\n };\n cellEditor = customEditor.getElement(this.handleCustomUpdate, customEditorProps);\n } else {\n cellEditor = editor(editable, attr, format, editorClass, this.valueShortCircuit(fieldValue),\n null, row);\n }\n\n if (isFocus) {\n if (customStyleWithNav) {\n const customStyle = Util.isFunction(customStyleWithNav) ?\n customStyleWithNav(fieldValue, row) : customStyleWithNav;\n style = {\n ...style,\n ...customStyle\n };\n } else {\n className = `${className} default-focus-cell`;\n }\n }\n\n return (\n \n { cellEditor }\n | \n );\n }\n\n _getCheckBoxValue(e) {\n let value = '';\n const values = e.currentTarget.value.split(':');\n value = e.currentTarget.checked ? values[0] : values[1];\n return value;\n }\n}\n\nTableEditColumn.propTypes = {\n completeEdit: PropTypes.func,\n rowIndex: PropTypes.number,\n colIndex: PropTypes.number,\n blurToSave: PropTypes.bool,\n blurToEscape: PropTypes.bool,\n editable: PropTypes.oneOfType([ PropTypes.bool, PropTypes.object ]),\n format: PropTypes.oneOfType([ PropTypes.bool, PropTypes.func ]),\n row: PropTypes.any,\n fieldValue: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.number,\n PropTypes.array,\n PropTypes.object\n ]),\n className: PropTypes.any,\n beforeShowError: PropTypes.func,\n isFocus: PropTypes.bool,\n attrs: PropTypes.object,\n customStyleWithNav: PropTypes.oneOfType([ PropTypes.func, PropTypes.object ])\n};\n\n\nexport default TableEditColumn;\n\n\n\n// WEBPACK FOOTER //\n// src/TableEditColumn.js","import Utils from './util';\nimport React from 'react';\n\nconst editor = function(editable, attr, format, editorClass, defaultValue, ignoreEditable, row) {\n if (editable === true ||\n (editable === false && ignoreEditable) ||\n typeof editable === 'string') { // simple declare\n const type = editable ? 'text' : editable;\n return (\n \n );\n } else if (!editable) {\n const type = editable ? 'text' : editable;\n return (\n \n );\n } else if (editable && (editable.type === undefined ||\n editable.type === null ||\n editable.type.trim() === '')) {\n const type = editable ? 'text' : editable;\n return (\n \n );\n } else if (editable.type) {// standard declare\n // put style if exist\n editable.style && (attr.style = editable.style);\n // put class if exist\n attr.className = (editorClass || '') +\n ' form-control editor edit-' +\n editable.type +\n (editable.className ? (' ' + editable.className) : '');\n\n if (editable.type === 'select') {// process select input\n let options = [];\n let { values } = editable.options;\n const { textKey, valueKey } = editable.options;\n if (Utils.isFunction(values)) {\n values = values(row);\n }\n if (Array.isArray(values)) {// only can use arrray data for options\n let text;\n let value;\n options = values.map((option, i) => {\n if (typeof option === 'object') {\n text = textKey ? option[textKey] : option.text;\n value = valueKey ? option[valueKey] : option.value;\n } else {\n text = format ? format(option) : option;\n value = option;\n }\n return (\n \n );\n }\n );\n }\n return (\n \n );\n } else if (editable.type === 'textarea') {// process textarea input\n // put other if exist\n editable.cols && (attr.cols = editable.cols);\n editable.rows && (attr.rows = editable.rows);\n let saveBtn;\n const keyUpHandler = attr.onKeyDown;\n if (keyUpHandler) {\n attr.onKeyDown = function(e) {\n if (e.keyCode !== 13) { // not Pressed ENTER\n keyUpHandler(e);\n }\n };\n saveBtn = (\n \n );\n }\n return (\n \n \n { saveBtn }\n
\n );\n } else if (editable.type === 'checkbox') {\n let values = 'true:false';\n if (editable.options && editable.options.values) {\n // values = editable.options.values.split(':');\n values = editable.options.values;\n }\n attr.className = attr.className.replace('form-control', '');\n attr.className += ' checkbox pull-right';\n\n const checked = defaultValue &&\n defaultValue.toString() === values.split(':')[0] ? true : false;\n\n return (\n \n );\n } else if (editable.type === 'datetime') {\n return (\n \n );\n } else {// process other input type. as password,url,email...\n return (\n \n );\n }\n }\n // default return for other case of editable\n return (\n \n );\n};\n\nexport default editor;\n\n\n\n// WEBPACK FOOTER //\n// src/Editor.js","import Alert from 'react-s-alert';\n\nconst notice = (type, msg, title) => {\n const titleHTML = title ? `${ title }
` : '';\n\n const bodyHTML = `\n ${ titleHTML }\n \n \n ${ msg }\n
\n `;\n\n Alert.error(bodyHTML, {\n position: 'top-right',\n timeout: 3000,\n html: true,\n effect: 'scale'\n });\n};\n\nexport { notice };\n\n\n\n// WEBPACK FOOTER //\n// src/Notification.js","/* eslint max-len: 0 */\n/* eslint no-nested-ternary: 0 */\nimport React, { Component } from 'react';\nimport classSet from 'classnames';\n\nclass ExpandComponent extends Component {\n\n render() {\n const { className } = this.props;\n const trCss = {\n style: {\n backgroundColor: this.props.bgColor\n },\n className: classSet(className)\n };\n return (\n \n \n { this.props.children }\n | \n
\n );\n }\n}\n\nexport default ExpandComponent;\n\n\n\n// WEBPACK FOOTER //\n// src/ExpandComponent.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport classSet from 'classnames';\nimport PageButton from './PageButton.js';\nimport SizePerPageDropDown from './SizePerPageDropDown';\nimport Const from '../Const';\nimport Util from '../util';\n\nclass PaginationList extends Component {\n\n constructor(props) {\n super(props);\n this.state = {\n open: this.props.open\n };\n }\n\n componentWillReceiveProps() {\n const { keepSizePerPageState } = this.props;\n if (!keepSizePerPageState) {\n this.closeDropDown();\n }\n }\n\n changePage = page => {\n const {\n pageStartIndex,\n prePage,\n currPage,\n nextPage,\n lastPage,\n firstPage,\n sizePerPage,\n keepSizePerPageState\n } = this.props;\n\n if (page === prePage) {\n page = (currPage - 1) < pageStartIndex ? pageStartIndex : currPage - 1;\n } else if (page === nextPage) {\n page = (currPage + 1) > this.lastPage ? this.lastPage : currPage + 1;\n } else if (page === lastPage) {\n page = this.lastPage;\n } else if (page === firstPage) {\n page = pageStartIndex;\n } else {\n page = parseInt(page, 10);\n }\n\n if (keepSizePerPageState) { this.closeDropDown(); }\n\n if (page !== currPage) {\n this.props.changePage(page, sizePerPage);\n }\n }\n\n changeSizePerPage = pageNum => {\n const selectSize = typeof pageNum === 'string' ? parseInt(pageNum, 10) : pageNum;\n let { currPage } = this.props;\n if (selectSize !== this.props.sizePerPage) {\n this.totalPages = Math.ceil(this.props.dataSize / selectSize);\n this.lastPage = this.props.pageStartIndex + this.totalPages - 1;\n if (currPage > this.lastPage) currPage = this.lastPage;\n this.props.changePage(currPage, selectSize);\n if (this.props.onSizePerPageList) {\n this.props.onSizePerPageList(selectSize);\n }\n }\n\n this.closeDropDown();\n }\n\n toggleDropDown = () => {\n this.setState(() => {\n return {\n open: !this.state.open\n };\n });\n }\n\n closeDropDown = () => {\n this.setState(() => {\n return {\n open: false\n };\n });\n }\n\n render() {\n const {\n currPage,\n dataSize,\n sizePerPage,\n sizePerPageList,\n paginationShowsTotal,\n pageStartIndex,\n paginationPanel,\n hidePageListOnlyOnePage\n } = this.props;\n this.totalPages = Math.ceil(dataSize / sizePerPage);\n this.lastPage = this.props.pageStartIndex + this.totalPages - 1;\n const pageBtns = this.makePage(Util.isFunction(paginationPanel));\n const dropdown = this.makeDropDown();\n\n const offset = Math.abs(Const.PAGE_START_INDEX - pageStartIndex);\n let start = ((currPage - pageStartIndex) * sizePerPage);\n start = dataSize === 0 ? 0 : start + 1;\n let to = Math.min((sizePerPage * (currPage + offset) - 1), dataSize);\n if (to >= dataSize) to--;\n let total = paginationShowsTotal ? \n Showing rows { start } to { to + 1 } of { dataSize }\n : null;\n\n if (Util.isFunction(paginationShowsTotal)) {\n total = paginationShowsTotal(start, to + 1, dataSize);\n }\n\n const content = paginationPanel && paginationPanel({\n currPage,\n sizePerPage,\n sizePerPageList,\n pageStartIndex,\n totalPages: this.totalPages,\n changePage: this.changePage,\n toggleDropDown: this.toggleDropDown,\n changeSizePerPage: this.changeSizePerPage,\n components: {\n totalText: total,\n sizePerPageDropdown: dropdown,\n pageList: pageBtns\n }\n });\n\n const hidePageList = hidePageListOnlyOnePage && this.totalPages === 1 ? 'none' : 'block';\n return (\n \n {\n content ||\n [ (\n
\n { total }{ sizePerPageList.length > 1 ? dropdown : null }\n
\n ), (\n
\n { pageBtns }\n
\n ) ]\n }\n
\n );\n }\n\n makeDropDown() {\n let dropdown;\n let dropdownProps;\n let sizePerPageText = '';\n const {\n sizePerPageDropDown,\n hideSizePerPage,\n sizePerPage,\n sizePerPageList\n } = this.props;\n if (sizePerPageDropDown) {\n dropdown = sizePerPageDropDown({\n open: this.state.open,\n hideSizePerPage,\n currSizePerPage: String(sizePerPage),\n sizePerPageList,\n toggleDropDown: this.toggleDropDown,\n changeSizePerPage: this.changeSizePerPage,\n onBlur: this.closeDropDown\n });\n if (dropdown.type.name === SizePerPageDropDown.name) {\n dropdownProps = dropdown.props;\n } else {\n return dropdown;\n }\n }\n\n if (dropdownProps || !dropdown) {\n const isBootstrap4 = Util.isBootstrap4(this.props.version);\n const sizePerPageOptions = sizePerPageList.map((_sizePerPage) => {\n const pageText = _sizePerPage.text || _sizePerPage;\n const pageNum = _sizePerPage.value || _sizePerPage;\n if (sizePerPage === pageNum) sizePerPageText = pageText;\n if (isBootstrap4) {\n return (\n {\n e.preventDefault();\n this.changeSizePerPage(pageNum);\n } }>{ pageText }\n );\n } else {\n return (\n \n {\n e.preventDefault();\n this.changeSizePerPage(pageNum);\n } }>{ pageText }\n \n );\n }\n });\n dropdown = (\n \n );\n }\n return dropdown;\n }\n\n makePage(isCustomPagingPanel = false) {\n const pages = this.getPages();\n const isStart = (page, { currPage, pageStartIndex, firstPage, prePage }) =>\n (currPage === pageStartIndex && (page === firstPage || page === prePage));\n const isEnd = (page, { currPage, nextPage, lastPage }) =>\n (currPage === this.lastPage && (page === nextPage || page === lastPage ));\n const pageBtns = pages\n .filter(function(page) {\n if (this.props.alwaysShowAllBtns) {\n return true;\n }\n return (isStart(page, this.props) || isEnd(page, this.props)) ?\n false :\n true;\n }, this)\n .map(function(page, index) {\n const isActive = page === this.props.currPage;\n const isDisabled = (isStart(page, this.props) || isEnd(page, this.props)) ?\n true :\n false;\n let title = page + '';\n let pageNumber = page;\n\n if (page === this.props.nextPage) {\n title = this.props.nextPageTitle;\n pageNumber = this.props.currPage + 1;\n } else if (page === this.props.prePage) {\n title = this.props.prePageTitle;\n pageNumber = this.props.currPage - 1;\n } else if (page === this.props.firstPage) {\n title = this.props.firstPageTitle;\n pageNumber = this.props.pageStartIndex;\n } else if (page === this.props.lastPage) {\n title = this.props.lastPageTitle;\n pageNumber = this.getLastPage();\n }\n\n return (\n \n { page }\n \n );\n }, this);\n const classname = classSet(\n isCustomPagingPanel ? null : 'react-bootstrap-table-page-btns-ul',\n 'pagination'\n );\n return (\n \n );\n }\n\n getLastPage() {\n return this.lastPage;\n }\n\n getPages() {\n let pages;\n let endPage = this.totalPages;\n if (endPage <= 0) return [];\n let startPage = Math.max(\n this.props.currPage - Math.floor(this.props.paginationSize / 2),\n this.props.pageStartIndex\n );\n endPage = startPage + this.props.paginationSize - 1;\n\n if (endPage > this.lastPage) {\n endPage = this.lastPage;\n startPage = endPage - this.props.paginationSize + 1;\n }\n\n if (startPage !== this.props.pageStartIndex\n && this.totalPages > this.props.paginationSize\n && this.props.withFirstAndLast) {\n pages = [ this.props.firstPage, this.props.prePage ];\n } else if (this.totalPages > 1 || this.props.alwaysShowAllBtns) {\n pages = [ this.props.prePage ];\n } else {\n pages = [];\n }\n\n for (let i = startPage; i <= endPage; i++) {\n if (i >= this.props.pageStartIndex) pages.push(i);\n }\n\n if (endPage <= this.lastPage && pages.length > 1) {\n pages.push(this.props.nextPage);\n }\n if (endPage !== this.lastPage && this.props.withFirstAndLast) {\n pages.push(this.props.lastPage);\n }\n\n return pages;\n }\n}\nPaginationList.propTypes = {\n currPage: PropTypes.number,\n sizePerPage: PropTypes.number,\n dataSize: PropTypes.number,\n changePage: PropTypes.func,\n sizePerPageList: PropTypes.array,\n paginationShowsTotal: PropTypes.oneOfType([ PropTypes.bool, PropTypes.func ]),\n paginationSize: PropTypes.number,\n onSizePerPageList: PropTypes.func,\n prePage: PropTypes.any,\n nextPage: PropTypes.any,\n firstPage: PropTypes.any,\n lastPage: PropTypes.any,\n pageStartIndex: PropTypes.number,\n hideSizePerPage: PropTypes.bool,\n alwaysShowAllBtns: PropTypes.bool,\n withFirstAndLast: PropTypes.bool,\n sizePerPageDropDown: PropTypes.func,\n paginationPanel: PropTypes.func,\n prePageTitle: PropTypes.string,\n nextPageTitle: PropTypes.string,\n firstPageTitle: PropTypes.string,\n lastPageTitle: PropTypes.string,\n hidePageListOnlyOnePage: PropTypes.bool,\n keepSizePerPageState: PropTypes.bool\n};\n\nPaginationList.defaultProps = {\n sizePerPage: Const.SIZE_PER_PAGE,\n pageStartIndex: Const.PAGE_START_INDEX\n};\n\nexport default PaginationList;\n\n\n\n// WEBPACK FOOTER //\n// src/pagination/PaginationList.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport classSet from 'classnames';\n\nclass PageButton extends Component {\n\n constructor(props) {\n super(props);\n }\n\n pageBtnClick = e => {\n e.preventDefault();\n this.props.changePage(this.props.pageNumber);\n }\n\n render() {\n const classes = classSet({\n 'active': this.props.active,\n 'disabled': this.props.disable,\n 'hidden': this.props.hidden,\n 'page-item': true\n });\n return (\n \n { this.props.children }\n \n );\n }\n}\nPageButton.propTypes = {\n title: PropTypes.string,\n changePage: PropTypes.func,\n active: PropTypes.bool,\n disable: PropTypes.bool,\n hidden: PropTypes.bool,\n children: PropTypes.node,\n pageNumber: PropTypes.number\n};\n\nexport default PageButton;\n\n\n\n// WEBPACK FOOTER //\n// src/pagination/PageButton.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nconst sizePerPageDefaultClass = 'react-bs-table-sizePerPage-dropdown';\n\nclass SizePerPageDropDown extends Component {\n render() {\n const {\n open,\n hidden,\n onClick,\n onBlur,\n options,\n className,\n variation,\n btnContextual,\n isBootstrap4,\n currSizePerPage\n } = this.props;\n\n if (hidden) return null;\n\n const openClass = open ? 'open show' : '';\n\n const renderOptions = () => {\n const attrs = {\n className: `dropdown-menu ${openClass}`,\n role: 'menu',\n 'aria-labelledby': 'pageDropDown'\n };\n const type = isBootstrap4 ? 'div' : 'ul';\n\n return React.createElement(type, attrs, options);\n };\n\n return (\n \n \n { renderOptions() }\n \n );\n }\n}\n\nSizePerPageDropDown.propTypes = {\n open: PropTypes.bool,\n hidden: PropTypes.bool,\n btnContextual: PropTypes.string,\n currSizePerPage: PropTypes.string,\n options: PropTypes.array,\n variation: PropTypes.oneOf([ 'dropdown', 'dropup' ]),\n className: PropTypes.string,\n onClick: PropTypes.func,\n onBlur: PropTypes.func\n};\nSizePerPageDropDown.defaultProps = {\n open: false,\n hidden: false,\n btnContextual: 'btn-default btn-secondary',\n variation: 'dropdown',\n className: ''\n};\n\n\nexport default SizePerPageDropDown;\n\n\n\n// WEBPACK FOOTER //\n// src/pagination/SizePerPageDropDown.js","/* eslint no-console: 0 */\n\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Modal from 'react-modal';\n// import classSet from 'classnames';\nimport Const from '../Const';\n// import editor from '../Editor';\nimport { notice } from '../Notification.js';\nimport InsertModal from './InsertModal';\nimport InsertButton from './InsertButton';\nimport DeleteButton from './DeleteButton';\nimport ExportCSVButton from './ExportCSVButton';\nimport ShowSelectedOnlyButton from './ShowSelectedOnlyButton';\nimport SearchField from './SearchField';\nimport ClearSearchButton from './ClearSearchButton';\n\nclass ToolBar extends Component {\n\n static modalSeq = 0;\n\n constructor(props) {\n super(props);\n this.timeouteClear = 0;\n this.modalClassName;\n this.state = {\n isInsertModalOpen: false,\n validateState: null,\n shakeEditor: false,\n showSelected: false\n };\n }\n\n componentWillMount() {\n const delay = this.props.searchDelayTime ? this.props.searchDelayTime : 0;\n this.debounceCallback = this.handleDebounce(() => {\n this.seachInput && this.props.onSearch(this.seachInput.getValue());\n },\n delay\n );\n }\n\n componentWillReceiveProps(nextProps) {\n if (nextProps.reset) {\n this.setSearchInput('');\n }\n }\n\n componentWillUnmount() {\n this.clearTimeout();\n }\n\n setSearchInput(text) {\n if (this.seachInput && this.seachInput.value !== text) {\n this.seachInput.value = text;\n }\n }\n\n clearTimeout() {\n if (this.timeouteClear) {\n clearTimeout(this.timeouteClear);\n this.timeouteClear = 0;\n }\n }\n\n displayCommonMessage = () => {\n notice('error', this.props.insertFailIndicator, '');\n }\n\n validateNewRow(newRow) {\n const validateState = {};\n let isValid = true;\n let tempMsg;\n let responseType;\n\n this.props.columns.forEach(column => {\n if (column.isKey && column.keyValidator) { // key validator for checking exist key\n tempMsg = this.props.isValidKey(newRow[column.field]);\n if (tempMsg) {\n this.displayCommonMessage();\n isValid = false;\n validateState[column.field] = tempMsg;\n }\n } else if (column.editable && column.editable.validator) { // process validate\n tempMsg = column.editable.validator(newRow[column.field], newRow);\n responseType = typeof tempMsg;\n if (responseType !== 'object' && tempMsg !== true) {\n this.displayCommonMessage();\n isValid = false;\n validateState[column.field] = tempMsg;\n } else if (responseType === 'object' && tempMsg.isValid !== true) {\n notice(\n tempMsg.notification.type,\n tempMsg.notification.msg,\n tempMsg.notification.title);\n isValid = false;\n validateState[column.field] = tempMsg.notification.msg;\n }\n }\n });\n\n if (isValid) {\n return true;\n } else {\n this.clearTimeout();\n // show error in form and shake it\n this.setState(() => { return { validateState, shakeEditor: true }; });\n this.timeouteClear = setTimeout(() => {\n this.setState(() => { return { shakeEditor: false }; });\n }, 300);\n return null;\n }\n }\n\n handleSaveBtnClick = (newRow) => {\n if (!this.validateNewRow(newRow)) { // validation fail\n return;\n }\n const msg = this.props.onAddRow(newRow);\n if (msg !== false) {\n this.afterHandleSaveBtnClick(msg);\n }\n }\n\n afterHandleSaveBtnClick = (msg) => {\n if (msg) {\n notice('error', msg, '');\n this.clearTimeout();\n // shake form and hack prevent modal hide\n this.setState(() => {\n return {\n shakeEditor: true,\n validateState: 'this is hack for prevent bootstrap modal hide'\n };\n });\n // clear animate class\n this.timeouteClear = setTimeout(() => {\n this.setState(() => { return { shakeEditor: false }; });\n }, 300);\n } else {\n // reset state and hide modal hide\n this.setState(() => {\n return {\n validateState: null,\n shakeEditor: false,\n isInsertModalOpen: false\n };\n });\n }\n }\n\n handleModalClose = () => {\n this.setState(() => { return { isInsertModalOpen: false }; });\n }\n\n handleModalOpen = () => {\n this.setState(() => { return { isInsertModalOpen: true }; });\n }\n\n handleShowOnlyToggle = () => {\n this.setState(() => {\n return {\n showSelected: !this.state.showSelected\n };\n });\n this.props.onShowOnlySelected();\n }\n\n handleDropRowBtnClick = () => {\n this.props.onDropRow();\n }\n\n handleDebounce = (func, wait, immediate) => {\n let timeout;\n\n return () => {\n const later = () => {\n timeout = null;\n\n if (!immediate) {\n func.apply(this, arguments);\n }\n };\n\n const callNow = immediate && !timeout;\n\n clearTimeout(timeout);\n\n timeout = setTimeout(later, wait || 0);\n\n if (callNow) {\n func.appy(this, arguments);\n }\n };\n }\n\n handleKeyUp = (event) => {\n event.persist();\n this.debounceCallback(event);\n }\n\n handleExportCSV = () => {\n this.props.onExportCSV();\n }\n\n handleClearBtnClick = () => {\n this.seachInput && this.seachInput.setValue('');\n this.props.onSearch('');\n }\n\n render() {\n this.modalClassName = 'bs-table-modal-sm' + ToolBar.modalSeq++;\n let toolbar = null;\n let btnGroup = null;\n let insertBtn = null;\n let deleteBtn = null;\n let exportCSVBtn = null;\n let showSelectedOnlyBtn = null;\n\n if (this.props.enableInsert) {\n if (this.props.insertBtn) {\n insertBtn = this.renderCustomBtn(this.props.insertBtn,\n [ this.handleModalOpen ], InsertButton.name, 'onClick', this.handleModalOpen);\n } else {\n insertBtn = (\n \n );\n }\n }\n\n if (this.props.enableDelete) {\n if (this.props.deleteBtn) {\n deleteBtn = this.renderCustomBtn(this.props.deleteBtn,\n [ this.handleDropRowBtnClick ], DeleteButton.name, 'onClick', this.handleDropRowBtnClick);\n } else {\n deleteBtn = (\n \n );\n }\n }\n\n if (this.props.enableShowOnlySelected) {\n if (this.props.showSelectedOnlyBtn) {\n showSelectedOnlyBtn = this.renderCustomBtn(this.props.showSelectedOnlyBtn,\n [ this.handleShowOnlyToggle, this.state.showSelected ], ShowSelectedOnlyButton.name,\n 'onClick', this.handleShowOnlyToggle);\n } else {\n showSelectedOnlyBtn = (\n \n );\n }\n }\n\n if (this.props.enableExportCSV) {\n if (this.props.exportCSVBtn) {\n exportCSVBtn = this.renderCustomBtn(this.props.exportCSVBtn,\n [ this.handleExportCSV ], ExportCSVButton.name, 'onClick', this.handleExportCSV);\n } else {\n exportCSVBtn = (\n \n );\n }\n }\n\n if (this.props.btnGroup) {\n btnGroup = this.props.btnGroup({\n exportCSVBtn,\n insertBtn,\n deleteBtn,\n showSelectedOnlyBtn\n });\n } else {\n btnGroup = (\n \n { exportCSVBtn }\n { insertBtn }\n { deleteBtn }\n { showSelectedOnlyBtn }\n
\n );\n }\n\n const [ searchPanel, searchField, clearBtn ] = this.renderSearchPanel();\n const modal = this.props.enableInsert ? this.renderInsertRowModal() : null;\n\n if (this.props.toolBar) {\n toolbar = this.props.toolBar({\n components: {\n exportCSVBtn,\n insertBtn,\n deleteBtn,\n showSelectedOnlyBtn,\n searchPanel,\n btnGroup,\n searchField,\n clearBtn\n },\n event: {\n openInsertModal: this.handleModalOpen,\n closeInsertModal: this.handleModalClose,\n dropRow: this.handleDropRowBtnClick,\n showOnlyToogle: this.handleShowOnlyToggle,\n exportCSV: this.handleExportCSV,\n search: this.props.onSearch\n }\n });\n } else {\n toolbar = [ (\n \n { this.props.searchPosition === 'left' ? searchPanel : btnGroup }\n
\n ), (\n \n { this.props.searchPosition === 'left' ? btnGroup : searchPanel }\n
\n ) ];\n }\n\n return (\n \n { toolbar }\n { modal }\n
\n );\n }\n\n renderSearchPanel() {\n if (this.props.enableSearch) {\n let classNames = 'form-group form-group-sm react-bs-table-search-form';\n let clearBtn = null;\n let searchField = null;\n let searchPanel = null;\n if (this.props.clearSearch) {\n if (this.props.clearSearchBtn) {\n clearBtn = this.renderCustomBtn(this.props.clearSearchBtn,\n [ this.handleClearBtnClick ], ClearSearchButton.name, 'onClick', this.handleClearBtnClick); /* eslint max-len: 0*/\n } else {\n clearBtn = (\n \n );\n }\n classNames += ' input-group input-group-sm';\n }\n\n if (this.props.searchField) {\n searchField = this.props.searchField({\n search: this.handleKeyUp,\n defaultValue: this.props.defaultSearch,\n placeholder: this.props.searchPlaceholder\n });\n if (searchField.type.name === SearchField.name) {\n searchField = React.cloneElement(searchField, {\n ref: node => this.seachInput = node,\n onKeyUp: this.handleKeyUp\n });\n } else {\n searchField = React.cloneElement(searchField, {\n ref: node => this.seachInput = node\n });\n }\n } else {\n searchField = (\n this.seachInput = node }\n defaultValue={ this.props.defaultSearch }\n placeholder={ this.props.searchPlaceholder }\n onKeyUp={ this.handleKeyUp }/>\n );\n }\n if (this.props.searchPanel) {\n searchPanel = this.props.searchPanel({\n searchField, clearBtn,\n search: this.props.onSearch,\n defaultValue: this.props.defaultSearch,\n placeholder: this.props.searchPlaceholder,\n clearBtnClick: this.handleClearBtnClick\n });\n } else {\n searchPanel = (\n \n { searchField }\n \n { clearBtn }\n \n
\n );\n }\n return [ searchPanel, searchField, clearBtn ];\n } else {\n return [];\n }\n }\n\n renderInsertRowModal() {\n const validateState = this.state.validateState || {};\n const {\n version,\n columns,\n ignoreEditable,\n insertModalHeader,\n insertModalBody,\n insertModalFooter,\n insertModal\n } = this.props;\n\n let modal;\n modal = insertModal && insertModal(\n this.handleModalClose,\n this.handleSaveBtnClick,\n columns,\n validateState,\n ignoreEditable\n );\n\n if (!modal) {\n modal = (\n \n );\n }\n\n return (\n \n { modal }\n \n );\n }\n\n renderCustomBtn(cb, params, componentName, eventName, event) {\n let element = cb.apply(null, params);\n if (element.type.name === componentName && !element.props[eventName]) {\n const props = {};\n props[eventName] = event;\n element = React.cloneElement(element, props);\n }\n return element;\n }\n}\n\nToolBar.propTypes = {\n version: PropTypes.string,\n onAddRow: PropTypes.func,\n onDropRow: PropTypes.func,\n onShowOnlySelected: PropTypes.func,\n enableInsert: PropTypes.bool,\n enableDelete: PropTypes.bool,\n enableSearch: PropTypes.bool,\n enableShowOnlySelected: PropTypes.bool,\n columns: PropTypes.array,\n searchPlaceholder: PropTypes.string,\n exportCSVText: PropTypes.string,\n insertText: PropTypes.string,\n deleteText: PropTypes.string,\n saveText: PropTypes.string,\n closeText: PropTypes.string,\n clearSearch: PropTypes.bool,\n ignoreEditable: PropTypes.bool,\n defaultSearch: PropTypes.string,\n insertModalHeader: PropTypes.func,\n insertModalBody: PropTypes.func,\n insertModalFooter: PropTypes.func,\n insertModal: PropTypes.func,\n insertBtn: PropTypes.func,\n deleteBtn: PropTypes.func,\n showSelectedOnlyBtn: PropTypes.func,\n exportCSVBtn: PropTypes.func,\n clearSearchBtn: PropTypes.func,\n searchField: PropTypes.func,\n searchPanel: PropTypes.func,\n btnGroup: PropTypes.func,\n toolBar: PropTypes.func,\n searchPosition: PropTypes.string,\n reset: PropTypes.bool,\n isValidKey: PropTypes.func,\n insertFailIndicator: PropTypes.string\n};\n\nToolBar.defaultProps = {\n reset: false,\n enableInsert: false,\n enableDelete: false,\n enableSearch: false,\n enableShowOnlySelected: false,\n clearSearch: false,\n ignoreEditable: false,\n exportCSVText: Const.EXPORT_CSV_TEXT,\n insertText: Const.INSERT_BTN_TEXT,\n deleteText: Const.DELETE_BTN_TEXT,\n saveText: Const.SAVE_BTN_TEXT,\n closeText: Const.CLOSE_BTN_TEXT\n};\n\nexport default ToolBar;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/ToolBar.js","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _Modal = require(\"./components/Modal\");\n\nvar _Modal2 = _interopRequireDefault(_Modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = _Modal2.default;\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/index.js\n// module id = 45\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.bodyOpenClassName = exports.portalClassName = undefined;\n\nvar _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; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require(\"react-dom\");\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _propTypes = require(\"prop-types\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _ModalPortal = require(\"./ModalPortal\");\n\nvar _ModalPortal2 = _interopRequireDefault(_ModalPortal);\n\nvar _ariaAppHider = require(\"../helpers/ariaAppHider\");\n\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\n\nvar _safeHTMLElement = require(\"../helpers/safeHTMLElement\");\n\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _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; }\n\nvar portalClassName = exports.portalClassName = \"ReactModalPortal\";\nvar bodyOpenClassName = exports.bodyOpenClassName = \"ReactModal__Body--open\";\n\nvar isReact16 = _reactDom2.default.createPortal !== undefined;\nvar createPortal = isReact16 ? _reactDom2.default.createPortal : _reactDom2.default.unstable_renderSubtreeIntoContainer;\n\nfunction getParentElement(parentSelector) {\n return parentSelector();\n}\n\nvar Modal = function (_Component) {\n _inherits(Modal, _Component);\n\n function Modal() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Modal);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Modal.__proto__ || Object.getPrototypeOf(Modal)).call.apply(_ref, [this].concat(args))), _this), _this.removePortal = function () {\n !isReact16 && _reactDom2.default.unmountComponentAtNode(_this.node);\n var parent = getParentElement(_this.props.parentSelector);\n parent.removeChild(_this.node);\n }, _this.portalRef = function (ref) {\n _this.portal = ref;\n }, _this.renderPortal = function (props) {\n var portal = createPortal(_this, _react2.default.createElement(_ModalPortal2.default, _extends({ defaultStyles: Modal.defaultStyles }, props)), _this.node);\n _this.portalRef(portal);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Modal, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (!_safeHTMLElement.canUseDOM) return;\n\n if (!isReact16) {\n this.node = document.createElement(\"div\");\n }\n this.node.className = this.props.portalClassName;\n\n var parent = getParentElement(this.props.parentSelector);\n parent.appendChild(this.node);\n\n !isReact16 && this.renderPortal(this.props);\n }\n }, {\n key: \"componentWillReceiveProps\",\n value: function componentWillReceiveProps(newProps) {\n if (!_safeHTMLElement.canUseDOM) return;\n var isOpen = newProps.isOpen;\n // Stop unnecessary renders if modal is remaining closed\n\n if (!this.props.isOpen && !isOpen) return;\n\n var currentParent = getParentElement(this.props.parentSelector);\n var newParent = getParentElement(newProps.parentSelector);\n\n if (newParent !== currentParent) {\n currentParent.removeChild(this.node);\n newParent.appendChild(this.node);\n }\n\n !isReact16 && this.renderPortal(newProps);\n }\n }, {\n key: \"componentWillUpdate\",\n value: function componentWillUpdate(newProps) {\n if (!_safeHTMLElement.canUseDOM) return;\n if (newProps.portalClassName !== this.props.portalClassName) {\n this.node.className = newProps.portalClassName;\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (!_safeHTMLElement.canUseDOM || !this.node || !this.portal) return;\n\n var state = this.portal.state;\n var now = Date.now();\n var closesAt = state.isOpen && this.props.closeTimeoutMS && (state.closesAt || now + this.props.closeTimeoutMS);\n\n if (closesAt) {\n if (!state.beforeClose) {\n this.portal.closeWithTimeout();\n }\n\n setTimeout(this.removePortal, closesAt - now);\n } else {\n this.removePortal();\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n if (!_safeHTMLElement.canUseDOM || !isReact16) {\n return null;\n }\n\n if (!this.node && isReact16) {\n this.node = document.createElement(\"div\");\n }\n\n return createPortal(_react2.default.createElement(_ModalPortal2.default, _extends({\n ref: this.portalRef,\n defaultStyles: Modal.defaultStyles\n }, this.props)), this.node);\n }\n }], [{\n key: \"setAppElement\",\n value: function setAppElement(element) {\n ariaAppHider.setElement(element);\n }\n\n /* eslint-disable react/no-unused-prop-types */\n\n /* eslint-enable react/no-unused-prop-types */\n\n }]);\n\n return Modal;\n}(_react.Component);\n\nModal.propTypes = {\n isOpen: _propTypes2.default.bool.isRequired,\n style: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n portalClassName: _propTypes2.default.string,\n bodyOpenClassName: _propTypes2.default.string,\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n base: _propTypes2.default.string.isRequired,\n afterOpen: _propTypes2.default.string.isRequired,\n beforeClose: _propTypes2.default.string.isRequired\n })]),\n overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n base: _propTypes2.default.string.isRequired,\n afterOpen: _propTypes2.default.string.isRequired,\n beforeClose: _propTypes2.default.string.isRequired\n })]),\n appElement: _propTypes2.default.instanceOf(_safeHTMLElement2.default),\n onAfterOpen: _propTypes2.default.func,\n onRequestClose: _propTypes2.default.func,\n closeTimeoutMS: _propTypes2.default.number,\n ariaHideApp: _propTypes2.default.bool,\n shouldFocusAfterRender: _propTypes2.default.bool,\n shouldCloseOnOverlayClick: _propTypes2.default.bool,\n shouldReturnFocusAfterClose: _propTypes2.default.bool,\n parentSelector: _propTypes2.default.func,\n aria: _propTypes2.default.object,\n role: _propTypes2.default.string,\n contentLabel: _propTypes2.default.string,\n shouldCloseOnEsc: _propTypes2.default.bool\n};\nModal.defaultProps = {\n isOpen: false,\n portalClassName: portalClassName,\n bodyOpenClassName: bodyOpenClassName,\n ariaHideApp: true,\n closeTimeoutMS: 0,\n shouldFocusAfterRender: true,\n shouldCloseOnEsc: true,\n shouldCloseOnOverlayClick: true,\n shouldReturnFocusAfterClose: true,\n parentSelector: function parentSelector() {\n return document.body;\n }\n};\nModal.defaultStyles = {\n overlay: {\n position: \"fixed\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n backgroundColor: \"rgba(255, 255, 255, 0.75)\"\n },\n content: {\n position: \"absolute\",\n top: \"40px\",\n left: \"40px\",\n right: \"40px\",\n bottom: \"40px\",\n border: \"1px solid #ccc\",\n background: \"#fff\",\n overflow: \"auto\",\n WebkitOverflowScrolling: \"touch\",\n borderRadius: \"4px\",\n outline: \"none\",\n padding: \"20px\"\n }\n};\nexports.default = Modal;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/components/Modal.js\n// module id = 46\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; };\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require(\"prop-types\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _focusManager = require(\"../helpers/focusManager\");\n\nvar focusManager = _interopRequireWildcard(_focusManager);\n\nvar _scopeTab = require(\"../helpers/scopeTab\");\n\nvar _scopeTab2 = _interopRequireDefault(_scopeTab);\n\nvar _ariaAppHider = require(\"../helpers/ariaAppHider\");\n\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\n\nvar _refCount = require(\"../helpers/refCount\");\n\nvar refCount = _interopRequireWildcard(_refCount);\n\nvar _bodyClassList = require(\"../helpers/bodyClassList\");\n\nvar bodyClassList = _interopRequireWildcard(_bodyClassList);\n\nvar _safeHTMLElement = require(\"../helpers/safeHTMLElement\");\n\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _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; }\n\n// so that our CSS is statically analyzable\nvar CLASS_NAMES = {\n overlay: \"ReactModal__Overlay\",\n content: \"ReactModal__Content\"\n};\n\nvar TAB_KEY = 9;\nvar ESC_KEY = 27;\n\nvar ModalPortal = function (_Component) {\n _inherits(ModalPortal, _Component);\n\n function ModalPortal(props) {\n _classCallCheck(this, ModalPortal);\n\n var _this = _possibleConstructorReturn(this, (ModalPortal.__proto__ || Object.getPrototypeOf(ModalPortal)).call(this, props));\n\n _this.setFocusAfterRender = function (focus) {\n _this.focusAfterRender = _this.props.shouldFocusAfterRender && focus;\n };\n\n _this.setOverlayRef = function (overlay) {\n _this.overlay = overlay;\n };\n\n _this.setContentRef = function (content) {\n _this.content = content;\n };\n\n _this.afterClose = function () {\n var _this$props = _this.props,\n appElement = _this$props.appElement,\n ariaHideApp = _this$props.ariaHideApp;\n\n // Remove body class\n\n bodyClassList.remove(_this.props.bodyOpenClassName);\n\n // Reset aria-hidden attribute if all modals have been removed\n if (ariaHideApp && refCount.totalCount() < 1) {\n ariaAppHider.show(appElement);\n }\n\n if (_this.props.shouldFocusAfterRender) {\n if (_this.props.shouldReturnFocusAfterClose) {\n focusManager.returnFocus();\n focusManager.teardownScopedFocus();\n } else {\n focusManager.popWithoutFocus();\n }\n }\n };\n\n _this.open = function () {\n _this.beforeOpen();\n if (_this.state.afterOpen && _this.state.beforeClose) {\n clearTimeout(_this.closeTimer);\n _this.setState({ beforeClose: false });\n } else {\n if (_this.props.shouldFocusAfterRender) {\n focusManager.setupScopedFocus(_this.node);\n focusManager.markForFocusLater();\n }\n\n _this.setState({ isOpen: true }, function () {\n _this.setState({ afterOpen: true });\n\n if (_this.props.isOpen && _this.props.onAfterOpen) {\n _this.props.onAfterOpen();\n }\n });\n }\n };\n\n _this.close = function () {\n if (_this.props.closeTimeoutMS > 0) {\n _this.closeWithTimeout();\n } else {\n _this.closeWithoutTimeout();\n }\n };\n\n _this.focusContent = function () {\n return _this.content && !_this.contentHasFocus() && _this.content.focus();\n };\n\n _this.closeWithTimeout = function () {\n var closesAt = Date.now() + _this.props.closeTimeoutMS;\n _this.setState({ beforeClose: true, closesAt: closesAt }, function () {\n _this.closeTimer = setTimeout(_this.closeWithoutTimeout, _this.state.closesAt - Date.now());\n });\n };\n\n _this.closeWithoutTimeout = function () {\n _this.setState({\n beforeClose: false,\n isOpen: false,\n afterOpen: false,\n closesAt: null\n }, _this.afterClose);\n };\n\n _this.handleKeyDown = function (event) {\n if (event.keyCode === TAB_KEY) {\n (0, _scopeTab2.default)(_this.content, event);\n }\n\n if (_this.props.shouldCloseOnEsc && event.keyCode === ESC_KEY) {\n event.preventDefault();\n _this.requestClose(event);\n }\n };\n\n _this.handleOverlayOnClick = function (event) {\n if (_this.shouldClose === null) {\n _this.shouldClose = true;\n }\n\n if (_this.shouldClose && _this.props.shouldCloseOnOverlayClick) {\n if (_this.ownerHandlesClose()) {\n _this.requestClose(event);\n } else {\n _this.focusContent();\n }\n }\n _this.shouldClose = null;\n _this.moveFromContentToOverlay = null;\n };\n\n _this.handleOverlayOnMouseUp = function () {\n if (_this.moveFromContentToOverlay === null) {\n _this.shouldClose = false;\n }\n };\n\n _this.handleContentOnMouseUp = function () {\n _this.shouldClose = false;\n };\n\n _this.handleOverlayOnMouseDown = function (event) {\n if (!_this.props.shouldCloseOnOverlayClick && event.target == _this.overlay) {\n event.preventDefault();\n }\n _this.moveFromContentToOverlay = false;\n };\n\n _this.handleContentOnClick = function () {\n _this.shouldClose = false;\n };\n\n _this.handleContentOnMouseDown = function () {\n _this.shouldClose = false;\n _this.moveFromContentToOverlay = false;\n };\n\n _this.requestClose = function (event) {\n return _this.ownerHandlesClose() && _this.props.onRequestClose(event);\n };\n\n _this.ownerHandlesClose = function () {\n return _this.props.onRequestClose;\n };\n\n _this.shouldBeClosed = function () {\n return !_this.state.isOpen && !_this.state.beforeClose;\n };\n\n _this.contentHasFocus = function () {\n return document.activeElement === _this.content || _this.content.contains(document.activeElement);\n };\n\n _this.buildClassName = function (which, additional) {\n var classNames = (typeof additional === \"undefined\" ? \"undefined\" : _typeof(additional)) === \"object\" ? additional : {\n base: CLASS_NAMES[which],\n afterOpen: CLASS_NAMES[which] + \"--after-open\",\n beforeClose: CLASS_NAMES[which] + \"--before-close\"\n };\n var className = classNames.base;\n if (_this.state.afterOpen) {\n className = className + \" \" + classNames.afterOpen;\n }\n if (_this.state.beforeClose) {\n className = className + \" \" + classNames.beforeClose;\n }\n return typeof additional === \"string\" && additional ? className + \" \" + additional : className;\n };\n\n _this.ariaAttributes = function (items) {\n return Object.keys(items).reduce(function (acc, name) {\n acc[\"aria-\" + name] = items[name];\n return acc;\n }, {});\n };\n\n _this.state = {\n afterOpen: false,\n beforeClose: false\n };\n\n _this.shouldClose = null;\n _this.moveFromContentToOverlay = null;\n return _this;\n }\n\n _createClass(ModalPortal, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n // Focus needs to be set when mounting and already open\n if (this.props.isOpen) {\n this.setFocusAfterRender(true);\n this.open();\n }\n }\n }, {\n key: \"componentWillReceiveProps\",\n value: function componentWillReceiveProps(newProps) {\n if (process.env.NODE_ENV !== \"production\") {\n if (newProps.bodyOpenClassName !== this.props.bodyOpenClassName) {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"bodyOpenClassName\" prop has been modified. ' + \"This may cause unexpected behavior when multiple modals are open.\");\n }\n }\n // Focus only needs to be set once when the modal is being opened\n if (!this.props.isOpen && newProps.isOpen) {\n this.setFocusAfterRender(true);\n this.open();\n } else if (this.props.isOpen && !newProps.isOpen) {\n this.close();\n }\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate() {\n if (this.focusAfterRender) {\n this.focusContent();\n this.setFocusAfterRender(false);\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this.afterClose();\n clearTimeout(this.closeTimer);\n }\n }, {\n key: \"beforeOpen\",\n value: function beforeOpen() {\n var _props = this.props,\n appElement = _props.appElement,\n ariaHideApp = _props.ariaHideApp,\n bodyOpenClassName = _props.bodyOpenClassName;\n // Add body class\n\n bodyClassList.add(bodyOpenClassName);\n // Add aria-hidden to appElement\n if (ariaHideApp) {\n ariaAppHider.hide(appElement);\n }\n }\n\n // Don't steal focus from inner elements\n\n }, {\n key: \"render\",\n value: function render() {\n var _props2 = this.props,\n className = _props2.className,\n overlayClassName = _props2.overlayClassName,\n defaultStyles = _props2.defaultStyles;\n\n var contentStyles = className ? {} : defaultStyles.content;\n var overlayStyles = overlayClassName ? {} : defaultStyles.overlay;\n\n return this.shouldBeClosed() ? null : _react2.default.createElement(\n \"div\",\n {\n ref: this.setOverlayRef,\n className: this.buildClassName(\"overlay\", overlayClassName),\n style: _extends({}, overlayStyles, this.props.style.overlay),\n onClick: this.handleOverlayOnClick,\n onMouseDown: this.handleOverlayOnMouseDown,\n onMouseUp: this.handleOverlayOnMouseUp,\n \"aria-modal\": \"true\"\n },\n _react2.default.createElement(\n \"div\",\n _extends({\n ref: this.setContentRef,\n style: _extends({}, contentStyles, this.props.style.content),\n className: this.buildClassName(\"content\", className),\n tabIndex: \"-1\",\n onKeyDown: this.handleKeyDown,\n onMouseDown: this.handleContentOnMouseDown,\n onMouseUp: this.handleContentOnMouseUp,\n onClick: this.handleContentOnClick,\n role: this.props.role,\n \"aria-label\": this.props.contentLabel\n }, this.ariaAttributes(this.props.aria || {})),\n this.props.children\n )\n );\n }\n }]);\n\n return ModalPortal;\n}(_react.Component);\n\nModalPortal.defaultProps = {\n style: {\n overlay: {},\n content: {}\n }\n};\nModalPortal.propTypes = {\n isOpen: _propTypes2.default.bool.isRequired,\n defaultStyles: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n style: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n bodyOpenClassName: _propTypes2.default.string,\n ariaHideApp: _propTypes2.default.bool,\n appElement: _propTypes2.default.instanceOf(_safeHTMLElement2.default),\n onAfterOpen: _propTypes2.default.func,\n onRequestClose: _propTypes2.default.func,\n closeTimeoutMS: _propTypes2.default.number,\n shouldFocusAfterRender: _propTypes2.default.bool,\n shouldCloseOnOverlayClick: _propTypes2.default.bool,\n shouldReturnFocusAfterClose: _propTypes2.default.bool,\n role: _propTypes2.default.string,\n contentLabel: _propTypes2.default.string,\n aria: _propTypes2.default.object,\n children: _propTypes2.default.node,\n shouldCloseOnEsc: _propTypes2.default.bool\n};\nexports.default = ModalPortal;\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/components/ModalPortal.js\n// module id = 47\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.handleBlur = handleBlur;\nexports.handleFocus = handleFocus;\nexports.markForFocusLater = markForFocusLater;\nexports.returnFocus = returnFocus;\nexports.popWithoutFocus = popWithoutFocus;\nexports.setupScopedFocus = setupScopedFocus;\nexports.teardownScopedFocus = teardownScopedFocus;\n\nvar _tabbable = require(\"../helpers/tabbable\");\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar focusLaterElements = [];\nvar modalElement = null;\nvar needToFocus = false;\n\nfunction handleBlur() {\n needToFocus = true;\n}\n\nfunction handleFocus() {\n if (needToFocus) {\n needToFocus = false;\n if (!modalElement) {\n return;\n }\n // need to see how jQuery shims document.on('focusin') so we don't need the\n // setTimeout, firefox doesn't support focusin, if it did, we could focus\n // the element outside of a setTimeout. Side-effect of this implementation\n // is that the document.body gets focus, and then we focus our element right\n // after, seems fine.\n setTimeout(function () {\n if (modalElement.contains(document.activeElement)) {\n return;\n }\n var el = (0, _tabbable2.default)(modalElement)[0] || modalElement;\n el.focus();\n }, 0);\n }\n}\n\nfunction markForFocusLater() {\n focusLaterElements.push(document.activeElement);\n}\n\n/* eslint-disable no-console */\nfunction returnFocus() {\n var toFocus = null;\n try {\n toFocus = focusLaterElements.pop();\n toFocus.focus();\n return;\n } catch (e) {\n console.warn([\"You tried to return focus to\", toFocus, \"but it is not in the DOM anymore\"].join(\" \"));\n }\n}\n/* eslint-enable no-console */\n\nfunction popWithoutFocus() {\n focusLaterElements.length > 0 && focusLaterElements.pop();\n}\n\nfunction setupScopedFocus(element) {\n modalElement = element;\n\n if (window.addEventListener) {\n window.addEventListener(\"blur\", handleBlur, false);\n document.addEventListener(\"focus\", handleFocus, true);\n } else {\n window.attachEvent(\"onBlur\", handleBlur);\n document.attachEvent(\"onFocus\", handleFocus);\n }\n}\n\nfunction teardownScopedFocus() {\n modalElement = null;\n\n if (window.addEventListener) {\n window.removeEventListener(\"blur\", handleBlur);\n document.removeEventListener(\"focus\", handleFocus);\n } else {\n window.detachEvent(\"onBlur\", handleBlur);\n document.detachEvent(\"onFocus\", handleFocus);\n }\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/helpers/focusManager.js\n// module id = 48\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = findTabbableDescendants;\n/*!\n * Adapted from jQuery UI core\n *\n * http://jqueryui.com\n *\n * Copyright 2014 jQuery Foundation and other contributors\n * Released under the MIT license.\n * http://jquery.org/license\n *\n * http://api.jqueryui.com/category/ui-core/\n */\n\nvar tabbableNode = /input|select|textarea|button|object/;\n\nfunction hidesContents(element) {\n var zeroSize = element.offsetWidth <= 0 && element.offsetHeight <= 0;\n\n // If the node is empty, this is good enough\n if (zeroSize && !element.innerHTML) return true;\n\n // Otherwise we need to check some styles\n var style = window.getComputedStyle(element);\n return zeroSize ? style.getPropertyValue(\"overflow\") !== \"visible\" : style.getPropertyValue(\"display\") == \"none\";\n}\n\nfunction visible(element) {\n var parentElement = element;\n while (parentElement) {\n if (parentElement === document.body) break;\n if (hidesContents(parentElement)) return false;\n parentElement = parentElement.parentNode;\n }\n return true;\n}\n\nfunction focusable(element, isTabIndexNotNaN) {\n var nodeName = element.nodeName.toLowerCase();\n var res = tabbableNode.test(nodeName) && !element.disabled || (nodeName === \"a\" ? element.href || isTabIndexNotNaN : isTabIndexNotNaN);\n return res && visible(element);\n}\n\nfunction tabbable(element) {\n var tabIndex = element.getAttribute(\"tabindex\");\n if (tabIndex === null) tabIndex = undefined;\n var isTabIndexNaN = isNaN(tabIndex);\n return (isTabIndexNaN || tabIndex >= 0) && focusable(element, !isTabIndexNaN);\n}\n\nfunction findTabbableDescendants(element) {\n return [].slice.call(element.querySelectorAll(\"*\"), 0).filter(tabbable);\n}\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/helpers/tabbable.js\n// module id = 49\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = scopeTab;\n\nvar _tabbable = require(\"./tabbable\");\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction scopeTab(node, event) {\n var tabbable = (0, _tabbable2.default)(node);\n\n if (!tabbable.length) {\n // Do nothing, since there are no elements that can receive focus.\n event.preventDefault();\n return;\n }\n\n var shiftKey = event.shiftKey;\n var head = tabbable[0];\n var tail = tabbable[tabbable.length - 1];\n\n // proceed with default browser behavior\n if (node === document.activeElement) {\n return;\n }\n\n var target;\n if (tail === document.activeElement && !shiftKey) {\n target = head;\n }\n\n if (head === document.activeElement && shiftKey) {\n target = tail;\n }\n\n if (target) {\n event.preventDefault();\n target.focus();\n return;\n }\n\n // Safari radio issue.\n //\n // Safari does not move the focus to the radio button,\n // so we need to force it to really walk through all elements.\n //\n // This is very error prune, since we are trying to guess\n // if it is a safari browser from the first occurence between\n // chrome or safari.\n //\n // The chrome user agent contains the first ocurrence\n // as the 'chrome/version' and later the 'safari/version'.\n var checkSafari = /(\\bChrome\\b|\\bSafari\\b)\\//.exec(navigator.userAgent);\n var isSafariDesktop = checkSafari != null && checkSafari[1] != \"Chrome\" && /\\biPod\\b|\\biPad\\b/g.exec(navigator.userAgent) == null;\n\n // If we are not in safari desktop, let the browser control\n // the focus\n if (!isSafariDesktop) return;\n\n var x = tabbable.indexOf(document.activeElement);\n\n if (x > -1) {\n x += shiftKey ? -1 : 1;\n }\n\n event.preventDefault();\n\n tabbable[x].focus();\n}\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/helpers/scopeTab.js\n// module id = 50\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.assertNodeList = assertNodeList;\nexports.setElement = setElement;\nexports.validateElement = validateElement;\nexports.hide = hide;\nexports.show = show;\nexports.documentNotReadyOrSSRTesting = documentNotReadyOrSSRTesting;\nexports.resetForTesting = resetForTesting;\n\nvar _warning = require(\"warning\");\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar globalElement = null;\n\nfunction assertNodeList(nodeList, selector) {\n if (!nodeList || !nodeList.length) {\n throw new Error(\"react-modal: No elements were found for selector \" + selector + \".\");\n }\n}\n\nfunction setElement(element) {\n var useElement = element;\n if (typeof useElement === \"string\") {\n var el = document.querySelectorAll(useElement);\n assertNodeList(el, useElement);\n useElement = \"length\" in el ? el[0] : el;\n }\n globalElement = useElement || globalElement;\n return globalElement;\n}\n\nfunction validateElement(appElement) {\n if (!appElement && !globalElement) {\n (0, _warning2.default)(false, [\"react-modal: App element is not defined.\", \"Please use `Modal.setAppElement(el)` or set `appElement={el}`.\", \"This is needed so screen readers don't see main content\", \"when modal is opened. It is not recommended, but you can opt-out\", \"by setting `ariaHideApp={false}`.\"].join(\" \"));\n\n return false;\n }\n\n return true;\n}\n\nfunction hide(appElement) {\n if (validateElement(appElement)) {\n (appElement || globalElement).setAttribute(\"aria-hidden\", \"true\");\n }\n}\n\nfunction show(appElement) {\n if (validateElement(appElement)) {\n (appElement || globalElement).removeAttribute(\"aria-hidden\");\n }\n}\n\nfunction documentNotReadyOrSSRTesting() {\n globalElement = null;\n}\n\nfunction resetForTesting() {\n globalElement = null;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/helpers/ariaAppHider.js\n// module id = 51\n// module chunks = 0","/**\n * Copyright 2014-2015, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\n'use strict';\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar warning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n\n if (format.length < 10 || (/^[s\\W]*$/).test(format)) {\n throw new Error(\n 'The warning format should be able to uniquely identify this ' +\n 'warning. Please, use a more descriptive format than: ' + format\n );\n }\n\n if (!condition) {\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch(x) {}\n }\n };\n}\n\nmodule.exports = warning;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/warning/browser.js\n// module id = 52\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.get = get;\nexports.add = add;\nexports.remove = remove;\nexports.totalCount = totalCount;\nvar classListMap = {};\n\nfunction get() {\n return classListMap;\n}\n\nfunction add(bodyClass) {\n // Set variable and default if none\n if (!classListMap[bodyClass]) {\n classListMap[bodyClass] = 0;\n }\n classListMap[bodyClass] += 1;\n return bodyClass;\n}\n\nfunction remove(bodyClass) {\n if (classListMap[bodyClass]) {\n classListMap[bodyClass] -= 1;\n }\n return bodyClass;\n}\n\nfunction totalCount() {\n return Object.keys(classListMap).reduce(function (acc, curr) {\n return acc + classListMap[curr];\n }, 0);\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/helpers/refCount.js\n// module id = 53\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.add = add;\nexports.remove = remove;\n\nvar _refCount = require(\"./refCount\");\n\nvar refCount = _interopRequireWildcard(_refCount);\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction add(bodyClass) {\n // Increment class(es) on refCount tracker and add class(es) to body\n bodyClass.split(\" \").map(refCount.add).forEach(function (className) {\n return document.body.classList.add(className);\n });\n}\n\nfunction remove(bodyClass) {\n var classListMap = refCount.get();\n // Decrement class(es) from the refCount tracker\n // and remove unused class(es) from body\n bodyClass.split(\" \").map(refCount.remove).filter(function (className) {\n return classListMap[className] === 0;\n }).forEach(function (className) {\n return document.body.classList.remove(className);\n });\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/helpers/bodyClassList.js\n// module id = 54\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.canUseDOM = undefined;\n\nvar _exenv = require(\"exenv\");\n\nvar _exenv2 = _interopRequireDefault(_exenv);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar EE = _exenv2.default;\n\nvar SafeHTMLElement = EE.canUseDOM ? window.HTMLElement : {};\n\nvar canUseDOM = exports.canUseDOM = EE.canUseDOM;\n\nexports.default = SafeHTMLElement;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/helpers/safeHTMLElement.js\n// module id = 55\n// module chunks = 0","/*!\n Copyright (c) 2015 Jed Watson.\n Based on code that is Copyright 2013-2015, Facebook, Inc.\n All rights reserved.\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar canUseDOM = !!(\n\t\ttypeof window !== 'undefined' &&\n\t\twindow.document &&\n\t\twindow.document.createElement\n\t);\n\n\tvar ExecutionEnvironment = {\n\n\t\tcanUseDOM: canUseDOM,\n\n\t\tcanUseWorkers: typeof Worker !== 'undefined',\n\n\t\tcanUseEventListeners:\n\t\t\tcanUseDOM && !!(window.addEventListener || window.attachEvent),\n\n\t\tcanUseViewport: canUseDOM && !!window.screen\n\n\t};\n\n\tif (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\tdefine(function () {\n\t\t\treturn ExecutionEnvironment;\n\t\t});\n\t} else if (typeof module !== 'undefined' && module.exports) {\n\t\tmodule.exports = ExecutionEnvironment;\n\t} else {\n\t\twindow.ExecutionEnvironment = ExecutionEnvironment;\n\t}\n\n}());\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/exenv/index.js\n// module id = 56\n// module chunks = 0","/* eslint no-console: 0 */\n\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nimport InsertModalHeader from './InsertModalHeader';\nimport InsertModalFooter from './InsertModalFooter';\nimport InsertModalBody from './InsertModalBody';\n\nconst defaultModalClassName = 'react-bs-table-insert-modal';\n\nexport default class InsertModal extends Component {\n\n handleSave = () => {\n if (this.body.getFieldValue) {\n this.props.onSave(this.body.getFieldValue());\n } else {\n console.error(`Custom InsertModalBody should implement getFieldValue function\n and should return an object presented as the new row that user input.`);\n }\n }\n\n render() {\n let { headerComponent, footerComponent, bodyComponent } = this.props;\n const {\n columns,\n validateState,\n ignoreEditable,\n onModalClose\n } = this.props;\n const bodyAttr = { columns, validateState, ignoreEditable };\n\n bodyComponent = bodyComponent && bodyComponent(columns, validateState, ignoreEditable);\n\n headerComponent = headerComponent && headerComponent(onModalClose, this.handleSave);\n\n footerComponent = footerComponent && footerComponent(onModalClose, this.handleSave);\n\n if (bodyComponent) {\n bodyComponent = React.cloneElement(bodyComponent, { ref: node => this.body = node });\n }\n\n if (headerComponent && headerComponent.type.name === InsertModalHeader.name) {\n const eventProps = {};\n if (!headerComponent.props.onModalClose) eventProps.onModalClose = onModalClose;\n if (!headerComponent.props.onSave) eventProps.onSave = this.handleSave;\n if (Object.keys(eventProps).length > 0) {\n headerComponent = React.cloneElement(headerComponent, eventProps);\n }\n } else if (headerComponent && headerComponent.type.name !== InsertModalHeader.name) {\n const { className } = headerComponent.props;\n if (typeof className === 'undefined' || className.indexOf('modal-header') === -1) {\n headerComponent = ({ headerComponent }
);\n }\n }\n\n if (footerComponent && footerComponent.type.name === InsertModalFooter.name) {\n const eventProps = {};\n if (!footerComponent.props.onModalClose) eventProps.onModalClose = onModalClose;\n if (!footerComponent.props.onSave) eventProps.onSave = this.handleSave;\n if (Object.keys(eventProps).length > 0) {\n footerComponent = React.cloneElement(footerComponent, eventProps);\n }\n } else if (footerComponent && footerComponent.type.name !== InsertModalFooter.name) {\n const { className } = footerComponent.props;\n if (typeof className === 'undefined' || className.indexOf('modal-footer') === -1) {\n footerComponent = ({ footerComponent }
);\n }\n }\n\n return (\n \n {\n headerComponent ||\n ()\n }\n {\n bodyComponent ||\n ( this.body = node } { ...bodyAttr }/>)\n }\n {\n footerComponent ||\n ()\n }\n
\n );\n }\n}\nInsertModal.propTypes = {\n version: PropTypes.string.isRequired,\n columns: PropTypes.array.isRequired,\n validateState: PropTypes.object.isRequired,\n ignoreEditable: PropTypes.bool,\n headerComponent: PropTypes.func,\n bodyComponent: PropTypes.func,\n footerComponent: PropTypes.func,\n onModalClose: PropTypes.func,\n onSave: PropTypes.func\n};\n\nInsertModal.defaultProps = {};\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/InsertModal.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Util from '../util';\n\nclass InsertModalHeader extends Component {\n\n handleCloseBtnClick = e => {\n const { onModalClose, beforeClose } = this.props;\n beforeClose && beforeClose(e);\n onModalClose();\n }\n\n renderContent(closeBtn) {\n const { version, title: titleText } = this.props;\n const title = { titleText }
;\n if (Util.isBootstrap4(version)) {\n return [ title, closeBtn ];\n } else {\n return (\n \n { closeBtn }\n { title }\n \n );\n }\n }\n\n render() {\n const {\n hideClose,\n className,\n children\n } = this.props;\n\n const closeBtn = hideClose ? null : (\n \n );\n\n const content = children || this.renderContent(closeBtn);\n\n return (\n \n { content }\n
\n );\n }\n}\n\nInsertModalHeader.propTypes = {\n version: PropTypes.string,\n className: PropTypes.string,\n title: PropTypes.string,\n onModalClose: PropTypes.func,\n hideClose: PropTypes.bool,\n beforeClose: PropTypes.func\n};\nInsertModalHeader.defaultProps = {\n version: '3',\n className: '',\n title: 'Add Row',\n onModalClose: undefined,\n hideClose: false,\n beforeClose: undefined\n};\n\nexport default InsertModalHeader;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/InsertModalHeader.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Const from '../Const';\n\nclass InsertModalFooter extends Component {\n\n handleCloseBtnClick = e => {\n const { beforeClose, onModalClose } = this.props;\n beforeClose && beforeClose(e);\n onModalClose();\n }\n\n handleSaveBtnClick = e => {\n const { beforeSave, onSave } = this.props;\n beforeSave && beforeSave(e);\n onSave();\n }\n\n render() {\n const {\n className,\n saveBtnText,\n closeBtnText,\n closeBtnContextual,\n saveBtnContextual,\n closeBtnClass,\n saveBtnClass,\n children\n } = this.props;\n\n const content = children || [\n (),\n ()\n ];\n\n return (\n \n { content }\n
\n );\n }\n}\nInsertModalFooter.propTypes = {\n className: PropTypes.string,\n saveBtnText: PropTypes.string,\n closeBtnText: PropTypes.string,\n closeBtnContextual: PropTypes.string,\n saveBtnContextual: PropTypes.string,\n closeBtnClass: PropTypes.string,\n saveBtnClass: PropTypes.string,\n beforeClose: PropTypes.func,\n beforeSave: PropTypes.func,\n onSave: PropTypes.func,\n onModalClose: PropTypes.func\n};\nInsertModalFooter.defaultProps = {\n className: '',\n saveBtnText: Const.SAVE_BTN_TEXT,\n closeBtnText: Const.CLOSE_BTN_TEXT,\n closeBtnContextual: 'btn-default btn-secondary',\n saveBtnContextual: 'btn-primary',\n closeBtnClass: '',\n saveBtnClass: '',\n beforeClose: undefined,\n beforeSave: undefined\n};\n\nexport default InsertModalFooter;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/InsertModalFooter.js","/* eslint react/display-name: 0 */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nimport editor from '../Editor';\n\nclass InsertModalBody extends Component {\n\n getFieldValue() {\n const newRow = {};\n this.props.columns.forEach((column, i) => {\n let inputVal;\n if (column.autoValue) {\n // when you want same auto generate value and not allow edit, example ID field\n const time = new Date().getTime();\n inputVal = typeof column.autoValue === 'function' ?\n column.autoValue() :\n (`autovalue-${time}`);\n } else if (column.hiddenOnInsert || !column.field) {\n inputVal = '';\n } else {\n const dom = this.refs[column.field + i];\n inputVal = dom.value;\n\n if (column.editable && column.editable.type === 'checkbox') {\n const values = inputVal.split(':');\n inputVal = dom.checked ? values[0] : values[1];\n } else if (column.customInsertEditor) {\n inputVal = inputVal || dom.getFieldValue();\n }\n }\n newRow[column.field] = inputVal;\n }, this);\n return newRow;\n }\n\n render() {\n const { columns, validateState, ignoreEditable } = this.props;\n return (\n \n {\n columns.map((column, i) => {\n const {\n editable,\n format,\n field,\n name,\n autoValue,\n hiddenOnInsert,\n customInsertEditor\n } = column;\n const attr = {\n ref: field + i,\n placeholder: editable.placeholder ? editable.placeholder : name\n };\n let fieldElement;\n const defaultValue = editable.defaultValue || undefined;\n if (customInsertEditor) {\n const { getElement } = customInsertEditor;\n fieldElement = getElement(column, attr, 'form-control', ignoreEditable, defaultValue);\n }\n\n // fieldElement = false, means to use default editor when enable custom editor\n // Becasuse some users want to have default editor based on some condition.\n if (!customInsertEditor || fieldElement === false) {\n fieldElement = editor(editable, attr, format, '', defaultValue, ignoreEditable);\n }\n\n if (autoValue || hiddenOnInsert || !column.field) {\n // when you want same auto generate value\n // and not allow edit, for example ID field\n return null;\n }\n const error = validateState[field] ?\n (
{ validateState[field] }) :\n null;\n return (\n
\n \n { fieldElement }\n { error }\n
\n );\n })\n }\n
\n );\n }\n}\nInsertModalBody.propTypes = {\n columns: PropTypes.array,\n validateState: PropTypes.object,\n ignoreEditable: PropTypes.bool\n};\n\nInsertModalBody.defaultProps = {\n validateState: {},\n ignoreEditable: false\n};\n\nexport default InsertModalBody;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/InsertModalBody.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Const from '../Const';\n\nconst insertBtnDefaultClass = 'react-bs-table-add-btn';\n\nclass InsertButton extends Component {\n render() {\n const {\n btnContextual,\n className,\n onClick,\n btnGlyphicon,\n btnText,\n children,\n ...rest\n } = this.props;\n const content = children ||\n ( { btnText });\n return (\n \n );\n }\n}\n\nInsertButton.propTypes = {\n btnText: PropTypes.string,\n btnContextual: PropTypes.string,\n className: PropTypes.string,\n onClick: PropTypes.func,\n btnGlyphicon: PropTypes.string\n};\nInsertButton.defaultProps = {\n btnText: Const.INSERT_BTN_TEXT,\n btnContextual: 'btn-info',\n className: '',\n onClick: undefined,\n btnGlyphicon: 'glyphicon-plus fa-plus'\n};\n\nexport default InsertButton;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/InsertButton.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Const from '../Const';\n\nconst deleteBtnDefaultClass = 'react-bs-table-del-btn';\n\nclass DeleteButton extends Component {\n render() {\n const {\n btnContextual,\n className,\n onClick,\n btnGlyphicon,\n btnText,\n children,\n ...rest\n } = this.props;\n const content = children ||\n ( { btnText });\n return (\n \n );\n }\n}\n\nDeleteButton.propTypes = {\n btnText: PropTypes.string,\n btnContextual: PropTypes.string,\n className: PropTypes.string,\n onClick: PropTypes.func,\n btnGlyphicon: PropTypes.string\n};\nDeleteButton.defaultProps = {\n btnText: Const.DELETE_BTN_TEXT,\n btnContextual: 'btn-warning',\n className: '',\n onClick: undefined,\n btnGlyphicon: 'glyphicon-trash fa-trash'\n};\n\nexport default DeleteButton;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/DeleteButton.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Const from '../Const';\n\nconst exportCsvBtnDefaultClass = 'react-bs-table-csv-btn';\n\nclass ExportCSVButton extends Component {\n render() {\n const {\n btnContextual,\n className,\n onClick,\n btnGlyphicon,\n btnText,\n children,\n ...rest\n } = this.props;\n const content = children ||\n ( { btnText });\n return (\n \n );\n }\n}\n\nExportCSVButton.propTypes = {\n btnText: PropTypes.string,\n btnContextual: PropTypes.string,\n className: PropTypes.string,\n onClick: PropTypes.func,\n btnGlyphicon: PropTypes.string\n};\nExportCSVButton.defaultProps = {\n btnText: Const.EXPORT_CSV_TEXT,\n btnContextual: 'btn-success',\n className: '',\n onClick: undefined,\n btnGlyphicon: 'glyphicon-export fa-download'\n};\n\nexport default ExportCSVButton;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/ExportCSVButton.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Const from '../Const';\n\nconst showSelectedOnlyBtnDefaultClass = 'react-bs-table-show-sel-only-btn';\n\nclass ShowSelectedOnlyButton extends Component {\n render() {\n const {\n btnContextual,\n className,\n onClick,\n toggle,\n showAllText,\n showOnlySelectText,\n children,\n ...rest\n } = this.props;\n const content = children ||\n ({ toggle ? showAllText : showOnlySelectText });\n return (\n \n );\n }\n}\n\nShowSelectedOnlyButton.propTypes = {\n showAllText: PropTypes.string,\n showOnlySelectText: PropTypes.string,\n toggle: PropTypes.bool,\n btnContextual: PropTypes.string,\n className: PropTypes.string,\n onClick: PropTypes.func\n};\nShowSelectedOnlyButton.defaultProps = {\n showAllText: Const.SHOW_ALL,\n showOnlySelectText: Const.SHOW_ONLY_SELECT,\n toggle: false,\n btnContextual: 'btn-primary',\n className: '',\n onClick: undefined\n};\n\nexport default ShowSelectedOnlyButton;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/ShowSelectedOnlyButton.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport ReactDOM from 'react-dom';\n\nclass SearchField extends Component {\n\n getValue() {\n return ReactDOM.findDOMNode(this).value;\n }\n\n setValue(value) {\n ReactDOM.findDOMNode(this).value = value;\n }\n\n render() {\n const {\n className,\n defaultValue,\n placeholder,\n onKeyUp,\n ...rest\n } = this.props;\n return (\n \n );\n }\n}\n\nSearchField.propTypes = {\n className: PropTypes.string,\n defaultValue: PropTypes.string,\n placeholder: PropTypes.string,\n onKeyUp: PropTypes.func\n};\nSearchField.defaultProps = {\n className: '',\n defaultValue: '',\n placeholder: 'Search',\n onKeyUp: undefined\n};\n\nexport default SearchField;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/SearchField.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nconst clearBtnDefaultClass = 'react-bs-table-search-clear-btn';\n\nclass ClearSearchButton extends Component {\n\n render() {\n const {\n btnContextual,\n className,\n onClick,\n btnText,\n children,\n ...rest\n } = this.props;\n const content = children ||\n ({ btnText });\n return (\n \n );\n }\n}\n\nClearSearchButton.propTypes = {\n btnContextual: PropTypes.string,\n className: PropTypes.string,\n btnText: PropTypes.string,\n onClick: PropTypes.func\n};\nClearSearchButton.defaultProps = {\n btnContextual: 'btn-default btn-secondary',\n className: '',\n btnText: 'Clear',\n onClick: undefined\n};\n\nexport default ClearSearchButton;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/ClearSearchButton.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Const from './Const';\nimport classSet from 'classnames';\n\nclass TableFilter extends Component {\n\n constructor(props) {\n super(props);\n this.filterObj = {};\n }\n\n handleKeyUp = e => {\n const { value, name } = e.currentTarget;\n if (value.trim() === '') {\n delete this.filterObj[name];\n } else {\n this.filterObj[name] = value;\n }\n this.props.onFilter(this.filterObj);\n }\n\n render() {\n const { striped, condensed, rowSelectType, columns } = this.props;\n const tableClasses = classSet('table', {\n 'table-striped': striped,\n 'table-condensed': condensed\n });\n let selectRowHeader = null;\n\n if (rowSelectType === Const.ROW_SELECT_SINGLE ||\n rowSelectType === Const.ROW_SELECT_MULTI) {\n const style = {\n width: 35,\n paddingLeft: 0,\n paddingRight: 0\n };\n selectRowHeader = (Filter | );\n }\n\n const filterField = columns.map(function(column) {\n const { hidden, width, name } = column;\n const thStyle = {\n display: hidden ? 'none' : null,\n width\n };\n return (\n \n \n \n \n | \n );\n }, this);\n\n return (\n \n \n \n { selectRowHeader }{ filterField }\n
\n \n
\n );\n }\n}\nTableFilter.propTypes = {\n columns: PropTypes.array,\n rowSelectType: PropTypes.string,\n onFilter: PropTypes.func\n};\nexport default TableFilter;\n\n\n\n// WEBPACK FOOTER //\n// src/TableFilter.js","/* eslint no-nested-ternary: 0 */\n/* eslint guard-for-in: 0 */\n/* eslint no-console: 0 */\n/* eslint eqeqeq: 0 */\n/* eslint one-var: 0 */\nimport Const from '../Const';\n\nexport class TableDataStore {\n\n constructor(data) {\n this.data = data;\n this.filteredData = null;\n this.isOnFilter = false;\n this.filterObj = null;\n this.searchText = null;\n this.sortList = [];\n this.pageObj = {};\n this.selected = [];\n this.showOnlySelected = false;\n }\n\n setProps(props) {\n this.keyField = props.keyField;\n this.enablePagination = props.isPagination;\n this.colInfos = props.colInfos;\n this.remote = props.remote;\n this.multiColumnSearch = props.multiColumnSearch;\n // default behaviour if strictSearch prop is not provided: !multiColumnSearch\n this.strictSearch = typeof props.strictSearch === 'undefined' ?\n !props.multiColumnSearch : props.strictSearch;\n this.multiColumnSort = props.multiColumnSort;\n }\n\n clean() {\n this.filteredData = null;\n this.isOnFilter = false;\n this.filterObj = null;\n this.searchText = null;\n this.sortList = [];\n this.pageObj = {};\n this.selected = [];\n }\n\n isSearching() {\n return this.searchText !== null;\n }\n\n isFiltering() {\n return this.filterObj !== null;\n }\n\n setData(data) {\n this.data = data;\n if (this.remote) {\n return;\n }\n\n this._refresh(true);\n }\n\n getColInfos() {\n return this.colInfos;\n }\n\n getSortInfo() {\n return this.sortList;\n }\n\n setSortInfo(order, sortField) {\n if (typeof order !== typeof sortField) {\n throw new Error('The type of sort field and order should be both with String or Array');\n }\n if (Array.isArray(order) && Array.isArray(sortField)) {\n if (order.length !== sortField.length) {\n throw new Error('The length of sort fields and orders should be equivalent');\n }\n order = order.slice().reverse();\n this.sortList = sortField.slice().reverse().map((field, i) => {\n return {\n order: order[i],\n sortField: field\n };\n });\n this.sortList = this.sortList.slice(0, this.multiColumnSort);\n } else {\n const sortObj = {\n order: order,\n sortField: sortField\n };\n\n if (this.multiColumnSort > 1) {\n let i = this.sortList.length - 1;\n let sortFieldInHistory = false;\n\n for (; i >= 0; i--) {\n if (this.sortList[i].sortField === sortField) {\n sortFieldInHistory = true;\n break;\n }\n }\n\n if (sortFieldInHistory) {\n if (i > 0) {\n this.sortList = this.sortList.slice(0, i);\n } else {\n this.sortList = this.sortList.slice(1);\n }\n }\n\n this.sortList.unshift(sortObj);\n this.sortList = this.sortList.slice(0, this.multiColumnSort);\n } else {\n this.sortList = [ sortObj ];\n }\n }\n }\n\n cleanSortInfo() {\n this.sortList = [];\n }\n\n setSelectedRowKey(selectedRowKeys) {\n this.selected = selectedRowKeys;\n }\n\n getRowByKey(keys) {\n // Bad Performance #1164\n // return keys.map(key => {\n // const result = this.data.filter(d => d[this.keyField] === key);\n // if (result.length !== 0) return result[0];\n // });\n const result = [];\n if (!keys || keys.length === 0) {\n return result;\n }\n for (let i = 0; i < this.data.length; i++) {\n const d = this.data[i];\n if (keys.indexOf(d[this.keyField]) > -1) {\n keys = keys.filter(k => k !== d[this.keyField]);\n result.push(d);\n }\n }\n return result;\n }\n\n getSelectedRowKeys() {\n return this.selected;\n }\n\n getCurrentDisplayData() {\n if (this.isOnFilter) return this.filteredData;\n else return this.data;\n }\n\n _refresh(skipSorting) {\n if (this.isOnFilter) {\n if (this.filterObj !== null) this.filter(this.filterObj);\n if (this.searchText !== null) this.search(this.searchText);\n }\n if (!skipSorting && this.sortList.length > 0) {\n this.sort();\n }\n }\n\n ignoreNonSelected() {\n this.showOnlySelected = !this.showOnlySelected;\n if (this.showOnlySelected) {\n this.isOnFilter = true;\n this.filteredData = this.data.filter( row => {\n const result = this.selected.find(x => row[this.keyField] === x);\n return typeof result !== 'undefined' ? true : false;\n });\n } else {\n this.isOnFilter = false;\n }\n }\n\n sort() {\n let currentDisplayData = this.getCurrentDisplayData();\n\n currentDisplayData = this._sort(currentDisplayData);\n\n return this;\n }\n\n page(page, sizePerPage) {\n this.pageObj.end = page * sizePerPage - 1;\n this.pageObj.start = this.pageObj.end - (sizePerPage - 1);\n return this;\n }\n\n edit(newVal, rowIndex, fieldName) {\n const currentDisplayData = this.getCurrentDisplayData();\n let rowKeyCache;\n if (!this.enablePagination) {\n currentDisplayData[rowIndex][fieldName] = newVal;\n rowKeyCache = currentDisplayData[rowIndex][this.keyField];\n } else {\n currentDisplayData[this.pageObj.start + rowIndex][fieldName] = newVal;\n rowKeyCache = currentDisplayData[this.pageObj.start + rowIndex][this.keyField];\n }\n if (this.isOnFilter) {\n this.data.forEach(function(row) {\n if (row[this.keyField] === rowKeyCache) {\n row[fieldName] = newVal;\n }\n }, this);\n if (this.filterObj !== null) this.filter(this.filterObj);\n if (this.searchText !== null) this.search(this.searchText);\n }\n return this;\n }\n\n addAtBegin(newObj) {\n if (!newObj[this.keyField] || newObj[this.keyField].toString() === '') {\n throw new Error(`${this.keyField} can't be empty value.`);\n }\n const currentDisplayData = this.getCurrentDisplayData();\n currentDisplayData.forEach(function(row) {\n if (row[this.keyField].toString() === newObj[this.keyField].toString()) {\n throw new Error(`${this.keyField} ${newObj[this.keyField]} already exists`);\n }\n }, this);\n currentDisplayData.unshift(newObj);\n if (this.isOnFilter) {\n this.data.unshift(newObj);\n }\n this._refresh(false);\n }\n\n add(newObj) {\n const e = this.isValidKey(newObj[this.keyField]);\n if (e) throw new Error(e);\n\n const currentDisplayData = this.getCurrentDisplayData();\n currentDisplayData.push(newObj);\n if (this.isOnFilter) {\n this.data.push(newObj);\n }\n this._refresh(false);\n }\n\n isValidKey = key => {\n if (key === null || key === undefined || key.toString() === '') {\n return `${this.keyField} can't be empty value.`;\n }\n const currentDisplayData = this.getCurrentDisplayData();\n const exist = currentDisplayData.find(row => row[this.keyField].toString() === key.toString());\n if (exist) return `${this.keyField} ${key} already exists`;\n }\n\n remove(rowKey) {\n const currentDisplayData = this.getCurrentDisplayData();\n const result = currentDisplayData.filter(row => {\n return rowKey.indexOf(row[this.keyField]) === -1;\n });\n\n if (this.isOnFilter) {\n this.data = this.data.filter(row => {\n return rowKey.indexOf(row[this.keyField]) === -1;\n });\n this.filteredData = result;\n } else {\n this.data = result;\n }\n }\n\n filter(filterObj) {\n if (Object.keys(filterObj).length === 0) {\n this.filteredData = null;\n this.isOnFilter = false;\n this.filterObj = null;\n if (this.searchText) this._search(this.data);\n } else {\n let source = this.data;\n this.filterObj = filterObj;\n if (this.searchText) {\n this._search(source);\n source = this.filteredData;\n }\n this._filter(source);\n }\n }\n\n filterNumber(targetVal, filterVal, comparator) {\n let valid = true;\n switch (comparator) {\n case '=': {\n if (targetVal != filterVal) {\n valid = false;\n }\n break;\n }\n case '>': {\n if (targetVal <= filterVal) {\n valid = false;\n }\n break;\n }\n case '>=': {\n if (targetVal < filterVal) {\n valid = false;\n }\n break;\n }\n case '<': {\n if (targetVal >= filterVal) {\n valid = false;\n }\n break;\n }\n case '<=': {\n if (targetVal > filterVal) {\n valid = false;\n }\n break;\n }\n case '!=': {\n if (targetVal == filterVal) {\n valid = false;\n }\n break;\n }\n default: {\n console.error('Number comparator provided is not supported');\n break;\n }\n }\n return valid;\n }\n\n filterDate(targetVal, filterVal, comparator) {\n if (!targetVal) return false;\n\n const filterDate = filterVal.getDate();\n const filterMonth = filterVal.getMonth();\n const filterYear = filterVal.getFullYear();\n\n if (typeof targetVal !== 'object') {\n targetVal = new Date(targetVal);\n }\n\n const targetDate = targetVal.getDate();\n const targetMonth = targetVal.getMonth();\n const targetYear = targetVal.getFullYear();\n\n let valid = true;\n switch (comparator) {\n case '=': {\n if (filterDate !== targetDate ||\n filterMonth !== targetMonth ||\n filterYear !== targetYear) {\n valid = false;\n }\n break;\n }\n case '>': {\n if (targetVal <= filterVal) {\n valid = false;\n }\n break;\n }\n case '>=': {\n if (targetYear < filterYear) {\n valid = false;\n } else if (targetYear === filterYear &&\n targetMonth < filterMonth) {\n valid = false;\n } else if (targetYear === filterYear &&\n targetMonth === filterMonth &&\n targetDate < filterDate) {\n valid = false;\n }\n break;\n }\n case '<': {\n if (targetVal >= filterVal) {\n valid = false;\n }\n break;\n }\n case '<=': {\n if (targetYear > filterYear) {\n valid = false;\n } else if (targetYear === filterYear &&\n targetMonth > filterMonth) {\n valid = false;\n } else if (targetYear === filterYear &&\n targetMonth === filterMonth &&\n targetDate > filterDate) {\n valid = false;\n }\n break;\n }\n case '!=': {\n if (filterDate === targetDate &&\n filterMonth === targetMonth &&\n filterYear === targetYear) {\n valid = false;\n }\n break;\n }\n default: {\n console.error('Date comparator provided is not supported');\n break;\n }\n }\n return valid;\n }\n\n filterRegex(targetVal, filterVal) {\n try {\n return new RegExp(filterVal, 'i').test(targetVal);\n } catch (e) {\n return true;\n }\n }\n\n filterCustom(targetVal, filterVal, callbackInfo, cond) {\n if (callbackInfo !== null && typeof callbackInfo === 'object') {\n return callbackInfo.callback(targetVal, callbackInfo.callbackParameters);\n }\n\n return this.filterText(targetVal, filterVal, cond);\n }\n\n filterText(targetVal = '', filterVal, cond = Const.FILTER_COND_LIKE) {\n targetVal = targetVal === null ? '' : targetVal.toString();\n filterVal = filterVal.toString();\n if (cond === Const.FILTER_COND_EQ) {\n return targetVal === filterVal;\n } else {\n targetVal = targetVal.toLowerCase();\n filterVal = filterVal.toLowerCase();\n return !(targetVal.indexOf(filterVal) === -1);\n }\n }\n\n /**\n * Filter if targetVal is contained in filterVal.\n */\n filterArray(targetVal, filterVal) {\n // case insensitive\n return filterVal.indexOf(targetVal) > -1;\n }\n\n /* General search function\n * It will search for the text if the input includes that text;\n */\n search(searchText) {\n if (searchText.trim() === '') {\n this.filteredData = null;\n this.isOnFilter = false;\n this.searchText = null;\n if (this.filterObj) this._filter(this.data);\n } else {\n let source = this.data;\n this.searchText = searchText;\n if (this.filterObj) {\n this._filter(source);\n source = this.filteredData;\n }\n this._search(source);\n }\n }\n\n _filter(source) {\n const filterObj = this.filterObj;\n this.filteredData = source.filter((row, r) => {\n let valid = true;\n let filterVal;\n for (const key in filterObj) {\n let targetVal = row[key];\n if (targetVal === null || targetVal === undefined) {\n targetVal = '';\n }\n\n switch (filterObj[key].type) {\n case Const.FILTER_TYPE.NUMBER: {\n filterVal = filterObj[key].value.number;\n break;\n }\n case Const.FILTER_TYPE.CUSTOM: {\n filterVal = (typeof filterObj[key].value === 'object') ?\n undefined :\n (typeof filterObj[key].value === 'string') ?\n filterObj[key].value.toLowerCase() :\n filterObj[key].value;\n break;\n }\n case Const.FILTER_TYPE.DATE: {\n filterVal = filterObj[key].value.date;\n break;\n }\n case Const.FILTER_TYPE.REGEX: {\n filterVal = filterObj[key].value;\n break;\n }\n case Const.FILTER_TYPE.ARRAY: {\n filterVal = filterObj[key].value;\n if (!Array.isArray(filterVal)) {\n throw new Error('Value must be an Array');\n }\n break;\n }\n default: {\n filterVal = filterObj[key].value;\n if (filterVal === undefined) {\n // Support old filter\n filterVal = filterObj[key];\n }\n break;\n }\n }\n let format, filterFormatted, formatExtraData, filterValue;\n if (this.colInfos[key]) {\n format = this.colInfos[key].format;\n filterFormatted = this.colInfos[key].filterFormatted;\n formatExtraData = this.colInfos[key].formatExtraData;\n filterValue = this.colInfos[key].filterValue;\n if (filterFormatted && format) {\n targetVal = format(row[key], row, formatExtraData, r);\n } else if (filterValue) {\n targetVal = filterValue(row[key], row);\n }\n }\n\n switch (filterObj[key].type) {\n case Const.FILTER_TYPE.NUMBER: {\n valid = this.filterNumber(targetVal, filterVal, filterObj[key].value.comparator);\n break;\n }\n case Const.FILTER_TYPE.DATE: {\n valid = this.filterDate(targetVal, filterVal, filterObj[key].value.comparator);\n break;\n }\n case Const.FILTER_TYPE.REGEX: {\n valid = this.filterRegex(targetVal, filterVal);\n break;\n }\n case Const.FILTER_TYPE.CUSTOM: {\n const cond = filterObj[key].props ? filterObj[key].props.cond : Const.FILTER_COND_LIKE;\n valid = this.filterCustom(targetVal, filterVal, filterObj[key].value, cond);\n break;\n }\n case Const.FILTER_TYPE.ARRAY: {\n valid = this.filterArray(targetVal, filterVal);\n break;\n }\n default: {\n if (filterObj[key].type === Const.FILTER_TYPE.SELECT &&\n filterFormatted && filterFormatted && format) {\n filterVal = format(filterVal, row, formatExtraData, r);\n }\n const cond = filterObj[key].props ? filterObj[key].props.cond : Const.FILTER_COND_LIKE;\n valid = this.filterText(targetVal, filterVal, cond);\n break;\n }\n }\n if (!valid) {\n break;\n }\n }\n return valid;\n });\n this.isOnFilter = true;\n }\n\n /*\n * Four different sort modes, all case insensitive:\n * (1) strictSearch && !multiColumnSearch\n * search text must be contained as provided in a single column\n * (2) strictSearch && multiColumnSearch\n * conjunction (AND combination) of whitespace separated terms over multiple columns\n * (3) !strictSearch && !multiColumnSearch\n * conjunction (AND combination) of whitespace separated terms in a single column\n * (4) !strictSearch && multiColumnSearch\n * any of the whitespace separated terms must be contained in any column\n */\n _search(source) {\n let searchTextArray;\n if (this.multiColumnSearch || !this.strictSearch) {\n // ignore leading and trailing whitespaces\n searchTextArray = this.searchText.trim().toLowerCase().split(/\\s+/);\n } else {\n searchTextArray = [ this.searchText.toLowerCase() ];\n }\n const searchTermCount = searchTextArray.length;\n const multipleTerms = searchTermCount > 1;\n const nonStrictMultiCol = multipleTerms && !this.strictSearch && this.multiColumnSearch;\n const nonStrictSingleCol = multipleTerms && !this.strictSearch && !this.multiColumnSearch;\n this.filteredData = source.filter((row, r) => {\n const keys = Object.keys(row);\n // only clone array if necessary\n let searchTerms = multipleTerms ? searchTextArray.slice() : searchTextArray;\n // for loops are ugly, but performance matters here.\n // And you cant break from a forEach.\n // http://jsperf.com/for-vs-foreach/66\n for (let i = 0, keysLength = keys.length; i < keysLength; i++) {\n const key = keys[i];\n const colInfo = this.colInfos[key];\n if (colInfo && colInfo.searchable) {\n const {\n format,\n filterFormatted,\n filterValue,\n formatExtraData\n } = colInfo;\n let targetVal;\n if (filterFormatted && format) {\n targetVal = format(row[key], row, formatExtraData, r);\n } else if (filterValue) {\n targetVal = filterValue(row[key], row);\n } else {\n targetVal = row[key];\n }\n if (targetVal !== null && typeof targetVal !== 'undefined') {\n targetVal = targetVal.toString().toLowerCase();\n if (nonStrictSingleCol && searchTermCount > searchTerms.length) {\n // reset search terms for single column search\n searchTerms = searchTextArray.slice();\n }\n for (let j = searchTerms.length - 1; j > -1; j--) {\n if (targetVal.indexOf(searchTerms[j]) !== -1) {\n if (nonStrictMultiCol || searchTerms.length === 1) {\n // match found: the last or only one\n return true;\n }\n // match found: but there are more search terms to check for\n searchTerms.splice(j, 1);\n } else if (!this.multiColumnSearch) {\n // one of the search terms was not found in this column\n break;\n }\n }\n }\n }\n }\n return false;\n });\n this.isOnFilter = true;\n }\n\n _sort(arr) {\n if (this.sortList.length === 0 || typeof(this.sortList[0]) === 'undefined') {\n return arr;\n }\n\n arr.sort((a, b) => {\n let result = 0;\n\n for (let i = 0; i < this.sortList.length; i++) {\n const sortDetails = this.sortList[i];\n const isDesc = sortDetails.order.toLowerCase() === Const.SORT_DESC;\n\n const { sortFunc, sortFuncExtraData } = this.colInfos[sortDetails.sortField];\n\n if (sortFunc) {\n result = sortFunc(a, b, sortDetails.order, sortDetails.sortField, sortFuncExtraData);\n } else {\n const valueA = a[sortDetails.sortField] == null ? '' : a[sortDetails.sortField];\n const valueB = b[sortDetails.sortField] == null ? '' : b[sortDetails.sortField];\n\n if (isDesc) {\n if (typeof valueB === 'string') {\n result = valueB.localeCompare(valueA);\n } else {\n result = valueA > valueB ? -1 : ((valueA < valueB) ? 1 : 0);\n }\n } else {\n if (typeof valueA === 'string') {\n result = valueA.localeCompare(valueB);\n } else {\n result = valueA < valueB ? -1 : ((valueA > valueB) ? 1 : 0);\n }\n }\n }\n\n if (result !== 0) {\n return result;\n }\n }\n\n return result;\n });\n\n return arr;\n }\n\n getDataIgnoringPagination() {\n return this.getCurrentDisplayData();\n }\n\n get() {\n const _data = this.getCurrentDisplayData();\n\n if (_data.length === 0) return _data;\n\n const remote = typeof this.remote === 'function' ?\n (this.remote(Const.REMOTE))[Const.REMOTE_PAGE] : this.remote;\n\n if (remote || !this.enablePagination) {\n return _data;\n } else {\n const result = [];\n for (let i = this.pageObj.start; i <= this.pageObj.end; i++) {\n result.push(_data[i]);\n if (i + 1 === _data.length) break;\n }\n return result;\n }\n }\n\n getKeyField() {\n return this.keyField;\n }\n\n getDataNum() {\n return this.getCurrentDisplayData().length;\n }\n\n isChangedPage() {\n return this.pageObj.start && this.pageObj.end ? true : false;\n }\n\n isEmpty() {\n return (this.data.length === 0 ||\n this.data === null ||\n this.data === undefined);\n }\n\n getAllRowkey() {\n return this.data.map(row => {\n return row[this.keyField];\n });\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/store/TableDataStore.js","/* eslint block-scoped-var: 0 */\n/* eslint vars-on-top: 0 */\n/* eslint no-var: 0 */\n/* eslint no-unused-vars: 0 */\nimport Util from './util';\nimport Const from './Const';\n\nif (Util.canUseDOM()) {\n const filesaver = require('./filesaver');\n var saveAs = filesaver.saveAs;\n}\n\nfunction toString(data, keys, separator, excludeCSVHeader) {\n let dataString = '';\n if (data.length === 0) return dataString;\n\n const headCells = [];\n let rowCount = 0;\n keys.forEach(key => {\n if (key.row > rowCount) {\n rowCount = key.row;\n }\n // rowCount += (key.rowSpan + key.colSpan - 1);\n for (var index = 0; index < key.colSpan; index++) {\n headCells.push(key);\n }\n });\n\n const firstRow = excludeCSVHeader ? 1 : 0;\n for (let i = firstRow; i <= rowCount; i++) {\n dataString += headCells.map(x => {\n if ((x.row + (x.rowSpan - 1)) === i) {\n return `\"${x.header}\"`;\n }\n if (x.row === i && x.rowSpan > 1) {\n return '';\n }\n }).filter(key => {\n return typeof key !== 'undefined';\n }).join(separator) + '\\n';\n }\n\n keys = keys.filter(key => {\n return key.field !== undefined;\n });\n\n data.map(function(row) {\n keys.map(function(col, i) {\n const { field, format, extraData, type } = col;\n let value = typeof format !== 'undefined' ? format(row[field], row, extraData) : row[field];\n value = type === Const.CSV_NUMBER_TYPE ? Number(value) : `\"${value}\"`;\n const cell = typeof value !== 'undefined' ? value : '';\n dataString += cell;\n if (i + 1 < keys.length) dataString += separator;\n });\n\n dataString += '\\n';\n });\n\n return dataString;\n}\n\nconst exportCSV = function(data, keys, filename, separator, noAutoBOM, excludeCSVHeader) {\n const dataString = toString(data, keys, separator, excludeCSVHeader);\n if (typeof window !== 'undefined') {\n noAutoBOM = noAutoBOM === undefined ? true : noAutoBOM;\n saveAs(new Blob([ '\\ufeff', dataString ],\n { type: 'text/plain;charset=utf-8' }),\n filename, noAutoBOM);\n }\n};\n\nexport default exportCSV;\n\n\n\n// WEBPACK FOOTER //\n// src/csv_export_util.js","/* FileSaver.js\n * A saveAs() FileSaver implementation.\n * 1.3.2\n * 2016-06-16 18:25:19\n *\n * By Eli Grey, http://eligrey.com\n * License: MIT\n * See https://github.com/eligrey/FileSaver.js/blob/master/LICENSE.md\n */\n\n/*global self */\n/*jslint bitwise: true, indent: 4, laxbreak: true, laxcomma: true, smarttabs: true, plusplus: true */\n\n/*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */\n\nvar saveAs = saveAs || (function(view) {\n\t\"use strict\";\n\t// IE <10 is explicitly unsupported\n\tif (typeof view === \"undefined\" || typeof navigator !== \"undefined\" && /MSIE [1-9]\\./.test(navigator.userAgent)) {\n\t\treturn;\n\t}\n\tvar\n\t\t doc = view.document\n\t\t // only get URL when necessary in case Blob.js hasn't overridden it yet\n\t\t, get_URL = function() {\n\t\t\treturn view.URL || view.webkitURL || view;\n\t\t}\n\t\t, save_link = doc.createElementNS(\"http://www.w3.org/1999/xhtml\", \"a\")\n\t\t, can_use_save_link = \"download\" in save_link\n\t\t, click = function(node) {\n\t\t\tvar event = new MouseEvent(\"click\");\n\t\t\tnode.dispatchEvent(event);\n\t\t}\n\t\t, is_safari = /constructor/i.test(view.HTMLElement) || view.safari\n\t\t, is_chrome_ios =/CriOS\\/[\\d]+/.test(navigator.userAgent)\n\t\t, throw_outside = function(ex) {\n\t\t\t(view.setImmediate || view.setTimeout)(function() {\n\t\t\t\tthrow ex;\n\t\t\t}, 0);\n\t\t}\n\t\t, force_saveable_type = \"application/octet-stream\"\n\t\t// the Blob API is fundamentally broken as there is no \"downloadfinished\" event to subscribe to\n\t\t, arbitrary_revoke_timeout = 1000 * 40 // in ms\n\t\t, revoke = function(file) {\n\t\t\tvar revoker = function() {\n\t\t\t\tif (typeof file === \"string\") { // file is an object URL\n\t\t\t\t\tget_URL().revokeObjectURL(file);\n\t\t\t\t} else { // file is a File\n\t\t\t\t\tfile.remove();\n\t\t\t\t}\n\t\t\t};\n\t\t\tsetTimeout(revoker, arbitrary_revoke_timeout);\n\t\t}\n\t\t, dispatch = function(filesaver, event_types, event) {\n\t\t\tevent_types = [].concat(event_types);\n\t\t\tvar i = event_types.length;\n\t\t\twhile (i--) {\n\t\t\t\tvar listener = filesaver[\"on\" + event_types[i]];\n\t\t\t\tif (typeof listener === \"function\") {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tlistener.call(filesaver, event || filesaver);\n\t\t\t\t\t} catch (ex) {\n\t\t\t\t\t\tthrow_outside(ex);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t, auto_bom = function(blob) {\n\t\t\t// prepend BOM for UTF-8 XML and text/* types (including HTML)\n\t\t\t// note: your browser will automatically convert UTF-16 U+FEFF to EF BB BF\n\t\t\tif (/^\\s*(?:text\\/\\S*|application\\/xml|\\S*\\/\\S*\\+xml)\\s*;.*charset\\s*=\\s*utf-8/i.test(blob.type)) {\n\t\t\t\treturn new Blob([String.fromCharCode(0xFEFF), blob], {type: blob.type});\n\t\t\t}\n\t\t\treturn blob;\n\t\t}\n\t\t, FileSaver = function(blob, name, no_auto_bom) {\n\t\t\tif (!no_auto_bom) {\n\t\t\t\tblob = auto_bom(blob);\n\t\t\t}\n\t\t\t// First try a.download, then web filesystem, then object URLs\n\t\t\tvar\n\t\t\t\t filesaver = this\n\t\t\t\t, type = blob.type\n\t\t\t\t, force = type === force_saveable_type\n\t\t\t\t, object_url\n\t\t\t\t, dispatch_all = function() {\n\t\t\t\t\tdispatch(filesaver, \"writestart progress write writeend\".split(\" \"));\n\t\t\t\t}\n\t\t\t\t// on any filesys errors revert to saving with object URLs\n\t\t\t\t, fs_error = function() {\n\t\t\t\t\tif ((is_chrome_ios || (force && is_safari)) && view.FileReader) {\n\t\t\t\t\t\t// Safari doesn't allow downloading of blob urls\n\t\t\t\t\t\tvar reader = new FileReader();\n\t\t\t\t\t\treader.onloadend = function() {\n\t\t\t\t\t\t\tvar url = is_chrome_ios ? reader.result : reader.result.replace(/^data:[^;]*;/, 'data:attachment/file;');\n\t\t\t\t\t\t\tvar popup = view.open(url, '_blank');\n\t\t\t\t\t\t\tif(!popup) view.location.href = url;\n\t\t\t\t\t\t\turl=undefined; // release reference before dispatching\n\t\t\t\t\t\t\tfilesaver.readyState = filesaver.DONE;\n\t\t\t\t\t\t\tdispatch_all();\n\t\t\t\t\t\t};\n\t\t\t\t\t\treader.readAsDataURL(blob);\n\t\t\t\t\t\tfilesaver.readyState = filesaver.INIT;\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\t// don't create more object URLs than needed\n\t\t\t\t\tif (!object_url) {\n\t\t\t\t\t\tobject_url = get_URL().createObjectURL(blob);\n\t\t\t\t\t}\n\t\t\t\t\tif (force) {\n\t\t\t\t\t\tview.location.href = object_url;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar opened = view.open(object_url, \"_blank\");\n\t\t\t\t\t\tif (!opened) {\n\t\t\t\t\t\t\t// Apple does not allow window.open, see https://developer.apple.com/library/safari/documentation/Tools/Conceptual/SafariExtensionGuide/WorkingwithWindowsandTabs/WorkingwithWindowsandTabs.html\n\t\t\t\t\t\t\tview.location.href = object_url;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tfilesaver.readyState = filesaver.DONE;\n\t\t\t\t\tdispatch_all();\n\t\t\t\t\trevoke(object_url);\n\t\t\t\t}\n\t\t\t;\n\t\t\tfilesaver.readyState = filesaver.INIT;\n\n\t\t\tif (can_use_save_link) {\n\t\t\t\tobject_url = get_URL().createObjectURL(blob);\n\t\t\t\tsetTimeout(function() {\n\t\t\t\t\tsave_link.href = object_url;\n\t\t\t\t\tsave_link.download = name;\n\t\t\t\t\tclick(save_link);\n\t\t\t\t\tdispatch_all();\n\t\t\t\t\trevoke(object_url);\n\t\t\t\t\tfilesaver.readyState = filesaver.DONE;\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tfs_error();\n\t\t}\n\t\t, FS_proto = FileSaver.prototype\n\t\t, saveAs = function(blob, name, no_auto_bom) {\n\t\t\treturn new FileSaver(blob, name || blob.name || \"download\", no_auto_bom);\n\t\t}\n\t;\n\t// IE 10+ (native saveAs)\n\tif (typeof navigator !== \"undefined\" && navigator.msSaveOrOpenBlob) {\n\t\treturn function(blob, name, no_auto_bom) {\n\t\t\tname = name || blob.name || \"download\";\n\n\t\t\tif (!no_auto_bom) {\n\t\t\t\tblob = auto_bom(blob);\n\t\t\t}\n\t\t\treturn navigator.msSaveOrOpenBlob(blob, name);\n\t\t};\n\t}\n\n\tFS_proto.abort = function(){};\n\tFS_proto.readyState = FS_proto.INIT = 0;\n\tFS_proto.WRITING = 1;\n\tFS_proto.DONE = 2;\n\n\tFS_proto.error =\n\tFS_proto.onwritestart =\n\tFS_proto.onprogress =\n\tFS_proto.onwrite =\n\tFS_proto.onabort =\n\tFS_proto.onerror =\n\tFS_proto.onwriteend =\n\t\tnull;\n\n\treturn saveAs;\n}(\n\t typeof self !== \"undefined\" && self\n\t|| typeof window !== \"undefined\" && window\n\t|| this.content\n));\n// `self` is undefined in Firefox for Android content script context\n// while `this` is nsIContentFrameMessageManager\n// with an attribute `content` that corresponds to the window\n\nif (typeof module !== \"undefined\" && module.exports) {\n module.exports.saveAs = saveAs;\n} else if ((typeof define !== \"undefined\" && define !== null) && (define.amd !== null)) {\n define(\"FileSaver.js\", function() {\n return saveAs;\n });\n}\n\n\n// WEBPACK FOOTER //\n// src/filesaver.js","module.exports = function() { throw new Error(\"define cannot be used indirect\"); };\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// (webpack)/buildin/amd-define.js\n// module id = 71\n// module chunks = 0","module.exports = __webpack_amd_options__;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// (webpack)/buildin/amd-options.js\n// module id = 72\n// module chunks = 0","import Const from './Const';\nimport { EventEmitter } from 'events';\n\nexport class Filter extends EventEmitter {\n constructor(data) {\n super(data);\n this.currentFilter = {};\n }\n\n handleFilter(dataField, value, type, filterObj) {\n const filterType = type || Const.FILTER_TYPE.CUSTOM;\n\n const props = {\n cond: filterObj.condition // Only for select and text filter\n };\n\n if (value !== null && typeof value === 'object') {\n // value of the filter is an object\n let hasValue = true;\n for (const prop in value) {\n if (!value[prop] || value[prop] === '') {\n hasValue = false;\n break;\n }\n }\n // if one of the object properties is undefined or empty, we remove the filter\n if (hasValue) {\n this.currentFilter[dataField] = { value: value, type: filterType, props };\n } else {\n delete this.currentFilter[dataField];\n }\n } else if (!value || value.trim() === '') {\n delete this.currentFilter[dataField];\n } else {\n this.currentFilter[dataField] = { value: value.trim(), type: filterType, props };\n }\n this.emit('onFilterChange', this.currentFilter);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/Filter.js","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nfunction EventEmitter() {\n this._events = this._events || {};\n this._maxListeners = this._maxListeners || undefined;\n}\nmodule.exports = EventEmitter;\n\n// Backwards-compat with node 0.10.x\nEventEmitter.EventEmitter = EventEmitter;\n\nEventEmitter.prototype._events = undefined;\nEventEmitter.prototype._maxListeners = undefined;\n\n// By default EventEmitters will print a warning if more than 10 listeners are\n// added to it. This is a useful default which helps finding memory leaks.\nEventEmitter.defaultMaxListeners = 10;\n\n// Obviously not all Emitters should be limited to 10. This function allows\n// that to be increased. Set to zero for unlimited.\nEventEmitter.prototype.setMaxListeners = function(n) {\n if (!isNumber(n) || n < 0 || isNaN(n))\n throw TypeError('n must be a positive number');\n this._maxListeners = n;\n return this;\n};\n\nEventEmitter.prototype.emit = function(type) {\n var er, handler, len, args, i, listeners;\n\n if (!this._events)\n this._events = {};\n\n // If there is no 'error' event listener then throw.\n if (type === 'error') {\n if (!this._events.error ||\n (isObject(this._events.error) && !this._events.error.length)) {\n er = arguments[1];\n if (er instanceof Error) {\n throw er; // Unhandled 'error' event\n } else {\n // At least give some kind of context to the user\n var err = new Error('Uncaught, unspecified \"error\" event. (' + er + ')');\n err.context = er;\n throw err;\n }\n }\n }\n\n handler = this._events[type];\n\n if (isUndefined(handler))\n return false;\n\n if (isFunction(handler)) {\n switch (arguments.length) {\n // fast cases\n case 1:\n handler.call(this);\n break;\n case 2:\n handler.call(this, arguments[1]);\n break;\n case 3:\n handler.call(this, arguments[1], arguments[2]);\n break;\n // slower\n default:\n args = Array.prototype.slice.call(arguments, 1);\n handler.apply(this, args);\n }\n } else if (isObject(handler)) {\n args = Array.prototype.slice.call(arguments, 1);\n listeners = handler.slice();\n len = listeners.length;\n for (i = 0; i < len; i++)\n listeners[i].apply(this, args);\n }\n\n return true;\n};\n\nEventEmitter.prototype.addListener = function(type, listener) {\n var m;\n\n if (!isFunction(listener))\n throw TypeError('listener must be a function');\n\n if (!this._events)\n this._events = {};\n\n // To avoid recursion in the case that type === \"newListener\"! Before\n // adding it to the listeners, first emit \"newListener\".\n if (this._events.newListener)\n this.emit('newListener', type,\n isFunction(listener.listener) ?\n listener.listener : listener);\n\n if (!this._events[type])\n // Optimize the case of one listener. Don't need the extra array object.\n this._events[type] = listener;\n else if (isObject(this._events[type]))\n // If we've already got an array, just append.\n this._events[type].push(listener);\n else\n // Adding the second element, need to change to array.\n this._events[type] = [this._events[type], listener];\n\n // Check for listener leak\n if (isObject(this._events[type]) && !this._events[type].warned) {\n if (!isUndefined(this._maxListeners)) {\n m = this._maxListeners;\n } else {\n m = EventEmitter.defaultMaxListeners;\n }\n\n if (m && m > 0 && this._events[type].length > m) {\n this._events[type].warned = true;\n console.error('(node) warning: possible EventEmitter memory ' +\n 'leak detected. %d listeners added. ' +\n 'Use emitter.setMaxListeners() to increase limit.',\n this._events[type].length);\n if (typeof console.trace === 'function') {\n // not supported in IE 10\n console.trace();\n }\n }\n }\n\n return this;\n};\n\nEventEmitter.prototype.on = EventEmitter.prototype.addListener;\n\nEventEmitter.prototype.once = function(type, listener) {\n if (!isFunction(listener))\n throw TypeError('listener must be a function');\n\n var fired = false;\n\n function g() {\n this.removeListener(type, g);\n\n if (!fired) {\n fired = true;\n listener.apply(this, arguments);\n }\n }\n\n g.listener = listener;\n this.on(type, g);\n\n return this;\n};\n\n// emits a 'removeListener' event iff the listener was removed\nEventEmitter.prototype.removeListener = function(type, listener) {\n var list, position, length, i;\n\n if (!isFunction(listener))\n throw TypeError('listener must be a function');\n\n if (!this._events || !this._events[type])\n return this;\n\n list = this._events[type];\n length = list.length;\n position = -1;\n\n if (list === listener ||\n (isFunction(list.listener) && list.listener === listener)) {\n delete this._events[type];\n if (this._events.removeListener)\n this.emit('removeListener', type, listener);\n\n } else if (isObject(list)) {\n for (i = length; i-- > 0;) {\n if (list[i] === listener ||\n (list[i].listener && list[i].listener === listener)) {\n position = i;\n break;\n }\n }\n\n if (position < 0)\n return this;\n\n if (list.length === 1) {\n list.length = 0;\n delete this._events[type];\n } else {\n list.splice(position, 1);\n }\n\n if (this._events.removeListener)\n this.emit('removeListener', type, listener);\n }\n\n return this;\n};\n\nEventEmitter.prototype.removeAllListeners = function(type) {\n var key, listeners;\n\n if (!this._events)\n return this;\n\n // not listening for removeListener, no need to emit\n if (!this._events.removeListener) {\n if (arguments.length === 0)\n this._events = {};\n else if (this._events[type])\n delete this._events[type];\n return this;\n }\n\n // emit removeListener for all listeners on all events\n if (arguments.length === 0) {\n for (key in this._events) {\n if (key === 'removeListener') continue;\n this.removeAllListeners(key);\n }\n this.removeAllListeners('removeListener');\n this._events = {};\n return this;\n }\n\n listeners = this._events[type];\n\n if (isFunction(listeners)) {\n this.removeListener(type, listeners);\n } else if (listeners) {\n // LIFO order\n while (listeners.length)\n this.removeListener(type, listeners[listeners.length - 1]);\n }\n delete this._events[type];\n\n return this;\n};\n\nEventEmitter.prototype.listeners = function(type) {\n var ret;\n if (!this._events || !this._events[type])\n ret = [];\n else if (isFunction(this._events[type]))\n ret = [this._events[type]];\n else\n ret = this._events[type].slice();\n return ret;\n};\n\nEventEmitter.prototype.listenerCount = function(type) {\n if (this._events) {\n var evlistener = this._events[type];\n\n if (isFunction(evlistener))\n return 1;\n else if (evlistener)\n return evlistener.length;\n }\n return 0;\n};\n\nEventEmitter.listenerCount = function(emitter, type) {\n return emitter.listenerCount(type);\n};\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\n\nfunction isNumber(arg) {\n return typeof arg === 'number';\n}\n\nfunction isObject(arg) {\n return typeof arg === 'object' && arg !== null;\n}\n\nfunction isUndefined(arg) {\n return arg === void 0;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/events/events.js\n// module id = 74\n// module chunks = 0","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nclass ButtonGroup extends Component {\n render() {\n const {\n className,\n sizeClass,\n children,\n ...rest\n } = this.props;\n return (\n \n { children }\n
\n );\n }\n}\n\nButtonGroup.propTypes = {\n sizeClass: PropTypes.string,\n className: PropTypes.string\n};\nButtonGroup.defaultProps = {\n sizeClass: 'btn-group-sm',\n className: ''\n};\n\nexport default ButtonGroup;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/ButtonGroup.js"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;ACtCA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;ACxCA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;AAlBA;AACA;AACA;AACA;AAiBA;;;AAEA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AARA;AAlCA;AA4CA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;AAAA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAZA;AACA;AACA;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAPA;AASA;;;AAEA;AACA;AADA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAzBA;AACA;AA2BA;AACA;AAIA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;AACA;;;AAEA;AACA;AADA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;AAOA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AAQA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AAFA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AApBA;AAAA;AACA;AAqBA;AACA;AACA;AACA;AACA;AACA;AACA;AA5BA;AAAA;AACA;AA6BA;AACA;AA/BA;AAAA;AACA;AAgCA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA1BA;AA4BA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AA7EA;AAgFA;AACA;AAEA;AACA;AAxFA;AA2FA;;;AAEA;AACA;AADA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AAAA;AAEA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AADA;AAGA;AACA;;;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AAGA;AACA;;;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AAFA;AAAA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;;;AAEA;AACA;AADA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;;;AAEA;AACA;AACA;AACA;AAHA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AADA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AADA;AAAA;AAAA;AAAA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AACA;AAEA;AAHA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;;;AAEA;AACA;AACA;AAFA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AARA;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AALA;AAAA;AAAA;AAAA;AACA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AACA;AAOA;AACA;AAEA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA5BA;AA+BA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAEA;AAQA;AACA;AACA;AAAA;AAAA;AACA;AADA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAbA;AAeA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;AACA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAzCA;AA4CA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AAEA;AACA;AAEA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AADA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAbA;AAgBA;AACA;AACA;;;AAEA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AACA;AAEA;AACA;AAEA;AACA;AACA;AACA;AAGA;AAEA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AAHA;AACA;AACA;AAIA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAlBA;AAoBA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAKA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA5FA;AA8FA;AACA;AADA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AACA;AACA;AALA;AAOA;AApLA;AAsLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAbA;AAeA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAjFA;AAmFA;AACA;AADA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AAjKA;AACA;AAmKA;;;;;;;;;AAv3DA;AACA;;;;;;;;;;ACrBA;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACvLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC/hBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC9DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACzFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC5DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACzDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AC/CA;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACzUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACxNA;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACtEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC7FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACnHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAPA;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAnEA;AACA;AAqEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;AAhFA;AACA;;;;;;;;;;;;;;;;;;;;ACCA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;AAZA;AACA;AACA;AACA;AAUA;;;AAEA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AACA;AAFA;AAGA;AACA;;;;;;;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AALA;AAAA;AACA;AAMA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AADA;AACA;AAEA;AAEA;AACA;;;AAEA;AAAA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AACA;AAEA;AACA;AAAA;AACA;AACA;AAAA;AACA;AAEA;AACA;AAAA;AACA;AACA;AAAA;AACA;AAEA;AACA;AAAA;AACA;AACA;AAAA;AACA;AAEA;AACA;AAAA;AACA;AACA;AAAA;AACA;AAEA;AACA;AAAA;AACA;AACA;AAEA;AAAA;AAAA;AACA;AApCA;AAsCA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AADA;AAGA;AAAA;AAAA;AACA;AADA;AAJA;AASA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AAHA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAqBA;AACA;AACA;AAFA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AATA;AAcA;;;AAEA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAxBA;AA0BA;;;AAEA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AApBA;AAsBA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AAZA;AAcA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA7DA;AACA;AA+DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAnCA;AACA;AAqCA;;;;;;;;;AAvVA;AACA;AA2OA;AACA;;;;;;;;;;;;;;;;ACzPA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AAGA;AACA;AACA;AADA;AAGA;AACA;AAAA;AACA;AADA;AAIA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AAEA;AAAA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AADA;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAGA;AACA;AAGA;AARA;AAWA;AA/HA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;ACJA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;AALA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA;AAAA;AACA;AADA;AACA;AACA;AACA;AACA;AAJA;AAKA;AACA;;;AACA;AACA;AADA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AADA;AAIA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AALA;AAOA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAbA;AAgBA;;;;;;AAGA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AA7BA;AACA;AA+BA;AACA;AACA;AACA;AAFA;AADA;AACA;AAOA;;;;;;;;;AAhJA;AACA;AACA;AACA;AAGA;AACA;;;;;;;;;;;;;;;;;;ACbA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;AACA;AAAA;AACA;AADA;AACA;AACA;AACA;AACA;AACA;AADA;AAJA;AAOA;AACA;;;AACA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AAAA;AAAA;AACA;AACA;;;AAEA;AACA;AAAA;AAAA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AACA;AAQA;AACA;AADA;AACA;AAGA;;;;;;;;;AA5EA;AACA;;;;;;;;;;;;;;;;;;ACLA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;AACA;AAAA;AACA;AADA;AACA;AACA;AACA;AAHA;AAIA;AACA;;;AACA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AACA;AAQA;AACA;AADA;AACA;AAGA;;;;;;;;;AAlEA;AACA;;;;;;;;;;;;;;;;;;ACLA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA;AAAA;AACA;AADA;AACA;AACA;AACA;AACA;AADA;AAHA;AAOA;AACA;;;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AAGA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AACA;;;AAEA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;;;AAEA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAEA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AAEA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AALA;AAQA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AALA;AACA;AAOA;;;;;;;;;AA/GA;AACA;AASA;AACA;;;;;;;;;;;;;;;;;;AChBA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;AACA;AACA;;;AACA;AAAA;AACA;AADA;AACA;AACA;AACA;AACA;AACA;AADA;AAMA;AACA;AACA;AAZA;AAaA;AACA;;;AACA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AADA;AACA;AAEA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AADA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AADA;AAIA;AACA;AACA;;;AAEA;AACA;AADA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AAAA;AACA;AADA;AAIA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AAGA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAGA;AAPA;AAUA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAGA;AANA;AAQA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AA1BA;AAgCA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAlCA;AACA;AAoCA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAJA;AACA;AASA;;;;;;;;;AAxMA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACRA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;;;AACA;;;;;;;;;;;AACA;AAAA;AAAA;;;AACA;AAAA;AAAA;;;AACA;AACA;AACA;;;AACA;AACA;AAEA;AACA;AACA;AAEA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAGA;AAIA;AACA;AADA;AAGA;AACA;AAEA;AACA;AACA;AAEA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AAIA;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAJA;AAAA;AAAA;AACA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AADA;AAIA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAFA;AAJA;AAYA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAHA;AAMA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAHA;AAMA;AACA;AACA;AACA;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAxBA;AACA;AA0BA;;;;;;;;;AApLA;AACA;AAeA;AACA;AAWA;AACA;;;;;;;;;;;;;;;;;;ACtCA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;;;;;;;;;AAEA;AACA;AACA;AAAA;AACA;AACA;AAFA;AAKA;;;;;;AAEA;AACA;AACA;AAFA;AAIA;;;;;;;;;AAfA;AACA;;;;;;;;;;;;;;;;;;ACJA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AACA;AAFA;AAGA;AACA;;;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AACA;AAKA;AAGA;AACA;AACA;AACA;AAAA;AACA;AACA;AAEA;AAAA;AAAA;AACA;AAEA;AAHA;AAJA;AAYA;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AALA;AAOA;;;;;;;;;AA5CA;AACA;;;;;;;;;;;;;;;;;;ACJA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;;;;;;;;;AAEA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AAEA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAFA;AAKA;AAPA;AAWA;AACA;AApCA;AADA;AAFA;AADA;AA+CA;AAtDA;AA0DA;;;AAEA;AACA;AACA;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AARA;AACA;AAUA;;;;;;;;;AArFA;AACA;;;;;;;;;;;;;;;;;;;;;;ACLA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;AACA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AACA;AACA;AADA;AAFA;AAKA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAGA;AAGA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AApBA;AAuBA;AACA;AACA;AACA;AACA;AACA;AAEA;AAKA;AACA;AA/GA;AAiHA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AAGA;AAtBA;AACA;AAwBA;AACA;AAGA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AARA;AAWA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAGA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAHA;AADA;AAQA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAFA;AAJA;AAYA;;;AAEA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AAGA;AAGA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AADA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AAEA;AAIA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAYA;AACA;AACA;AACA;AACA;AAGA;;AAEA;AAEA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AACA;AAEA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AATA;AAAA;AAAA;AACA;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AADA;AACA;AAMA;AAEA;AAEA;AACA;AACA;AAAA;AAAA;AACA;;;AAEA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;;;AAEA;AACA;AAAA;AAAA;AACA;;;AAEA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AADA;AACA;AADA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AACA;AACA;AAEA;AACA;AAAA;AAAA;AAEA;AAAA;AAAA;AARA;AAYA;;;AAEA;AAAA;AACA;AADA;AACA;AAAA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AAHA;AAMA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAjCA;AAmCA;;;;;;;;;AAziBA;AACA;;;;;;;;;;;;;;;;;;;;ACVA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;AALA;AACA;AACA;AAIA;;;AAEA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AACA;AAFA;AAGA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;AAAA;AACA;AAAA;AACA;AACA;AAHA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAMA;AACA;AACA;AACA;AACA;AACA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AAGA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AACA;AAIA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AALA;AAOA;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAbA;AAeA;AACA;AACA;AACA;AAHA;AAKA;;;;;;;;;AAnIA;AACA;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAEA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AADA;AAAA;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAiBA;AACA;AACA;AAFA;AACA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAFA;AAIA;AAJA;AAOA;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAhBA;AACA;AAkBA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;;;;;;;;;AA3LA;AACA;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;AACA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AACA;AAFA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AACA;AAFA;AALA;AASA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAAA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;;;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;;;;;AASA;AACA;AARA;AACA;AACA;AACA;AACA;AACA;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AAFA;AAAA;AAAA;AACA;AAGA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA;AACA;AADA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AAEA;;;AAAA;AACA;AACA;AACA;AACA;AACA;;;;AAEA;;;AAAA;AACA;AACA;AACA;AACA;AACA;;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAUA;AAEA;AACA;AACA;AAJA;AAMA;AAjBA;AAAA;AACA;AACA;AAmBA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AAGA;AAHA;AAMA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAEA;AACA;AACA;AACA;AALA;AAQA;;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AApBA;AACA;AAuBA;;;;;;;;;AAzRA;AACA;;;;;;;;;;;;;;;;;;;;ACTA;AACA;;;AAAA;AACA;;;;;AACA;AACA;AAEA;AACA;AACA;AAEA;AAEA;AACA;AACA;AAEA;AACA;AAEA;AAGA;AACA;AAEA;AAEA;AAAA;AACA;AACA;AACA;AACA;AACA;AAIA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAEA;AAEA;AACA;AACA;AAAA;AACA;AADA;AAIA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAFA;AAAA;AAMA;AACA;AACA;AAAA;AACA;AACA;AAFA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AAEA;AACA;AAGA;AAAA;AACA;AAGA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;;;;;;;;;AAzHA;AACA;;;;;;;;;;;;;;;;;ACJA;AACA;;;;;AACA;AACA;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;;;;;;;;AAnBA;;;;;;;;;;;;;;;;;;;ACAA;AACA;;;AAAA;AACA;;;;;;;;;AAJA;AACA;AACA;AACA;AAEA;;;;;;;;;;;AAEA;AAAA;AACA;AACA;AACA;AACA;AADA;AAGA;AAJA;AAMA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AADA;AADA;AAMA;;;;;;AAGA;;;;;;;;;AApBA;AACA;;;;;;;;;;;;;;;;;;;;ACNA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AACA;AACA;AADA;AAFA;AAKA;AACA;;;;;;;;;;;;;;;;;;;;;;;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AADA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AADA;AAGA;AACA;;;AAEA;AACA;AACA;AACA;AADA;AAGA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AADA;AACA;AADA;AACA;AADA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AATA;AACA;AAeA;AACA;AACA;AAAA;AAEA;AAEA;AAAA;AACA;AAAA;AADA;AAIA;AAAA;AACA;AACA;AAFA;AARA;AAgBA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AAHA;AAAA;AAAA;AAAA;AAAA;AACA;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAPA;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AARA;AAUA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AANA;AADA;AAUA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAPA;AAUA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA;AAEA;AACA;AACA;AACA;AAGA;AAEA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AASA;AACA;AAIA;AACA;AAAA;AACA;AADA;AAIA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAxBA;AACA;AA0BA;AACA;AACA;AAFA;AACA;AAIA;;;;;;;;;AAhWA;AACA;;;;;;;;;;;;;;;;;;ACTA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAEA;AACA;;;;;;;;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AADA;AAIA;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAPA;AACA;AASA;;;;;;;;;AAnCA;AACA;;;;;;;;;;;;;;;;;;ACLA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;AACA;AACA;;;;;;;;;;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AAFA;AAPA;AAYA;AAdA;AAiBA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AATA;AAWA;AACA;AACA;AACA;AACA;AACA;AALA;AACA;AAQA;;;;;;;;;AAzEA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;ACJA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AACA;AACA;;;AACA;AACA;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;AAhBA;AACA;AAIA;AACA;AACA;AACA;AACA;AAQA;;;AAIA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAJA;AAUA;AACA;;;;;;;;;;;;;;;;;;AA4IA;AAAA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAjKA;AAAA;AACA;AAAA;AACA;AACA;AACA;AAGA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;;;AAEA;AACA;AAAA;AAAA;AACA;;;AAEA;AACA;AAAA;AAAA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AADA;AAGA;AACA;AACA;;;AAEA;AACA;AACA;;;AA0BA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAJA;AAOA;AACA;AA3EA;AAAA;AAAA;AAAA;AAAA;AACA;AA4EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AARA;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAXA;AAoBA;AACA;AACA;AAAA;AACA;AADA;AAIA;AAAA;AACA;AADA;AAIA;AACA;AACA;AACA;AAAA;AACA;AACA;AAFA;AAKA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AAAA;AAAA;AACA;AAFA;AAIA;AACA;AACA;AAAA;AAAA;AADA;AAGA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AALA;AAOA;AACA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AADA;AAFA;AAOA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAUA;AACA;AACA;AAOA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AALA;AAQA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AAlbA;AACA;AACA;AAmbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAnCA;AACA;AAqCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAZA;AACA;AAcA;;;;;;;;;AA1eA;AACA;;;;;;;;;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACnPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC5YA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC3FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACzDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC1EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AClEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC7DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACrCA;AACA;;;AAAA;AACA;;;AACA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;AARA;AACA;AAQA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACA;AACA;AACA;AACA;AAEA;AACA;;;AAEA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AAEA;AAEA;AACA;AACA;AAGA;AACA;AAAA;AAGA;AAEA;AACA;AACA;AAjBA;AAqBA;;;;;;AAjFA;;;AAmFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AATA;AACA;AAWA;;;;;;;;AAjGA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACZA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAFA;AAKA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAKA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAHA;AACA;AAMA;AACA;AACA;AACA;AAAA;AACA;AADA;AAIA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AACA;AAQA;;;;;;;;;AAjEA;AACA;;;;;;;;;;;;;;;;;;ACLA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAUA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAJA;AAKA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAJA;AACA;AAMA;AACA;AAAA;AACA;AADA;AAIA;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAXA;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AATA;AACA;AAWA;;;;;;;;;AAvEA;AACA;;;;;;;;;;;;;;;;;;ACJA;AACA;;;AAAA;AACA;;;AACA;AACA;;;;;;;;;AALA;AACA;AACA;AAIA;;;;;;;;;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AASA;AACA;AACA;AAFA;AAIA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAEA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAHA;AAMA;AA5CA;AAgDA;;;;;;AAEA;AACA;AACA;AACA;AAHA;AACA;AAKA;AACA;AACA;AAFA;AACA;AAIA;;;;;;;;;AA9FA;AACA;;;;;;;;;;;;;;;;;;;;ACPA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;;;AACA;AACA;AACA;;;;;;;;;;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AASA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AACA;AACA;AAFA;AAIA;AAJA;AAOA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AALA;AAOA;AACA;AACA;AACA;AACA;AACA;AALA;AACA;AAOA;;;;;;;;;AAzCA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACPA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;;;AACA;AACA;AACA;;;;;;;;;;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AASA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AACA;AACA;AAFA;AAIA;AAJA;AAOA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AALA;AAOA;AACA;AACA;AACA;AACA;AACA;AALA;AACA;AAOA;;;;;;;;;AAzCA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACPA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;;;AACA;AACA;AACA;;;;;;;;;;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AASA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AACA;AACA;AAFA;AAIA;AAJA;AAOA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AALA;AAOA;AACA;AACA;AACA;AACA;AACA;AALA;AACA;AAOA;;;;;;;;;AAzCA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACPA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;;;AACA;AACA;AACA;;;;;;;;;;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAUA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAJA;AAMA;AANA;AASA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AACA;AAQA;;;;;;;;;AA9CA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACPA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;;;AACA;;;;;;;;;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAOA;AAEA;AACA;AACA;AACA;AACA;AACA;AANA;AASA;;;;;;AAGA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AACA;AACA;AAJA;AACA;AAMA;;;;;;;;;AA5CA;AACA;;;;;;;;;;;;;;;;;;;;ACLA;AACA;;;AAAA;AACA;;;;;;;;;;;;;AACA;AACA;AACA;;;;;;;;;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAQA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AACA;AACA;AACA;AAHA;AAKA;AALA;AAQA;;;;;;AAGA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AACA;AACA;AAJA;AACA;AAMA;;;;;;;;;AAxCA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACNA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AACA;AAFA;AAGA;AACA;;;;;;;;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AAEA;AACA;AACA;AACA;AAHA;AAKA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AAFA;AADA;AAOA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AADA;AADA;AADA;AAQA;;;;;;AAEA;AACA;AACA;AACA;AAHA;AAKA;;;;;;;;;AAnEA;AACA;;;;;;;;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AACA;;;;;;;AACA;AAEA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AAFA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAVA;AAWA;AACA;AACA;AAAA;AAAA;AACA;AACA;AAfA;AACA;AASA;AAAA;AAMA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AAEA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAxCA;AA0CA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAEA;AACA;AAGA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAEA;AACA;AAGA;AACA;AACA;AACA;AACA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AA1DA;AA4DA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AAKA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAnCA;AAqCA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AA9BA;AAgCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;AAWA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAAA;AAAA;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AAGA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;;;;;;;;;;;;;;AAxtBA;;;;;;;;;;;;;;;ACHA;AACA;;;AAAA;AACA;;;;;AANA;AACA;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAjBA;AAkBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA3BA;AACA;AAgBA;AAAA;AAWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;;;;;;;;;AA/DA;AACA;AAEA;AACA;AAiDA;AACA;;;;;;;;;;;;AC/DA;;;;;;;;;;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAEA;AAFA;AAAA;AAIA;AACA;AALA;AAAA;AAAA;AASA;AACA;AACA;AAXA;AAAA;AAAA;AAeA;AACA;AACA;AACA;AAlBA;AAoBA;AApBA;AAAA;AAAA;AAAA;AAuBA;AACA;AAAA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AA/BA;AAiCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA7CA;AA+CA;AACA;AACA;AACA;AACA;AACA;AACA;AArDA;AAuDA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAMA;AACA;AACA;AARA;AAAA;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAtHA;AAAA;AAyHA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;AA5KA;;;;;;;;;ACfA;;;;;;;ACAA;AACA;AACA;;;;;;;;;;;;;;;;;ACFA;AACA;;;AAAA;AACA;;;;;;;;;AACA;;;AACA;AAAA;AACA;AADA;AACA;AACA;AAFA;AAGA;AACA;;;AACA;AACA;AACA;AACA;AACA;AADA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AAlCA;;;;;;;;;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AC7SA;AACA;;;AAAA;AACA;;;;;;;;;;;;;AACA;;;;;;;;;;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAMA;AACA;AAAA;AACA;AADA;AAIA;;;;;;AAGA;AACA;AACA;AAFA;AAIA;AACA;AACA;AAFA;AACA;AAIA;;;;;;;;;AAzBA;AACA;;;;;;;;;","sourceRoot":""}
\ No newline at end of file
+{"version":3,"file":"react-bootstrap-table.js","sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap 2f3263dc58a630aa1138","webpack:///src/index.js","webpack:///src/BootstrapTable.js","webpack:///external {\"root\":\"React\",\"commonjs2\":\"react\",\"commonjs\":\"react\",\"amd\":\"react\"}","webpack:///./~/prop-types/index.js","webpack:///./~/process/browser.js","webpack:///./~/react-is/index.js","webpack:///./~/react-is/cjs/react-is.production.min.js","webpack:///./~/react-is/cjs/react-is.development.js","webpack:///./~/prop-types/factoryWithTypeCheckers.js","webpack:///./~/object-assign/index.js","webpack:///./~/prop-types/lib/ReactPropTypesSecret.js","webpack:///./~/prop-types/checkPropTypes.js","webpack:///./~/prop-types/factoryWithThrowingShims.js","webpack:///./~/classnames/index.js","webpack:///./~/react-s-alert/index.js","webpack:///./~/react-s-alert/dist/SAlert.js","webpack:///./~/react-s-alert/dist/SAlertContent.js","webpack:///external {\"root\":\"ReactDOM\",\"commonjs2\":\"react-dom\",\"commonjs\":\"react-dom\",\"amd\":\"react-dom\"}","webpack:///./~/react-s-alert/dist/s-alert-parts/s-alert-tools.js","webpack:///./~/react-s-alert/dist/s-alert-parts/s-alert-store.js","webpack:///./~/react-s-alert/dist/SAlertContentTmpl.js","webpack:///./~/react-s-alert/dist/s-alert-parts/s-alert-data-prep.js","webpack:///src/Const.js","webpack:///src/TableHeaderColumn.js","webpack:///src/util.js","webpack:///src/filters/Date.js","webpack:///src/filters/Text.js","webpack:///src/filters/Regex.js","webpack:///src/filters/Select.js","webpack:///src/filters/Number.js","webpack:///src/TableHeader.js","webpack:///src/SelectRowHeaderColumn.js","webpack:///src/ExpandRowHeaderColumn.js","webpack:///src/TableFooter.js","webpack:///src/TableBody.js","webpack:///src/TableRow.js","webpack:///src/TableColumn.js","webpack:///src/TableEditColumn.js","webpack:///src/Editor.js","webpack:///src/Notification.js","webpack:///src/ExpandComponent.js","webpack:///src/pagination/PaginationList.js","webpack:///src/pagination/PageButton.js","webpack:///src/pagination/SizePerPageDropDown.js","webpack:///src/toolbar/ToolBar.js","webpack:///./~/react-modal/lib/index.js","webpack:///./~/react-modal/lib/components/Modal.js","webpack:///./~/react-modal/lib/components/ModalPortal.js","webpack:///./~/react-modal/lib/helpers/focusManager.js","webpack:///./~/react-modal/lib/helpers/tabbable.js","webpack:///./~/react-modal/lib/helpers/scopeTab.js","webpack:///./~/react-modal/lib/helpers/ariaAppHider.js","webpack:///./~/warning/warning.js","webpack:///./~/react-modal/lib/helpers/safeHTMLElement.js","webpack:///./~/exenv/index.js","webpack:///./~/react-modal/lib/helpers/classList.js","webpack:///./~/react-modal/lib/helpers/portalOpenInstances.js","webpack:///./~/react-modal/lib/helpers/bodyTrap.js","webpack:///./~/react-lifecycles-compat/react-lifecycles-compat.cjs.js","webpack:///src/toolbar/InsertModal.js","webpack:///src/toolbar/InsertModalHeader.js","webpack:///src/toolbar/InsertModalFooter.js","webpack:///src/toolbar/InsertModalBody.js","webpack:///src/toolbar/InsertButton.js","webpack:///src/toolbar/DeleteButton.js","webpack:///src/toolbar/ExportCSVButton.js","webpack:///src/toolbar/ShowSelectedOnlyButton.js","webpack:///src/toolbar/SearchField.js","webpack:///src/toolbar/ClearSearchButton.js","webpack:///src/TableFilter.js","webpack:///src/store/TableDataStore.js","webpack:///src/csv_export_util.js","webpack:///src/filesaver.js","webpack:///(webpack)/buildin/amd-define.js","webpack:///(webpack)/buildin/amd-options.js","webpack:///src/Filter.js","webpack:///./~/events/events.js","webpack:///src/toolbar/ButtonGroup.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"react\"), require(\"react-dom\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"react\", \"react-dom\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ReactBootstrapTable\"] = factory(require(\"react\"), require(\"react-dom\"));\n\telse\n\t\troot[\"ReactBootstrapTable\"] = factory(root[\"React\"], root[\"ReactDOM\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_2__, __WEBPACK_EXTERNAL_MODULE_17__) {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 2f3263dc58a630aa1138","import BootstrapTable from './BootstrapTable';\nimport TableHeaderColumn from './TableHeaderColumn';\nimport InsertModalHeader from './toolbar/InsertModalHeader';\nimport InsertModalBody from './toolbar/InsertModalBody';\nimport InsertModalFooter from './toolbar/InsertModalFooter';\nimport InsertButton from './toolbar/InsertButton';\nimport DeleteButton from './toolbar/DeleteButton';\nimport ExportCSVButton from './toolbar/ExportCSVButton';\nimport ShowSelectedOnlyButton from './toolbar/ShowSelectedOnlyButton';\nimport ClearSearchButton from './toolbar/ClearSearchButton';\nimport SearchField from './toolbar/SearchField';\nimport ButtonGroup from './toolbar/ButtonGroup';\nimport SizePerPageDropDown from './pagination/SizePerPageDropDown';\n\nif (typeof window !== 'undefined') {\n window.BootstrapTable = BootstrapTable;\n window.TableHeaderColumn = TableHeaderColumn;\n window.InsertModalHeader = InsertModalHeader;\n window.InsertModalBody = InsertModalBody;\n window.InsertModalFooter = InsertModalFooter;\n window.InsertButton = InsertButton;\n window.DeleteButton = DeleteButton;\n window.ShowSelectedOnlyButton = ShowSelectedOnlyButton;\n window.ExportCSVButton = ExportCSVButton;\n window.ClearSearchButton = ClearSearchButton;\n window.SearchField = SearchField;\n window.ButtonGroup = ButtonGroup;\n window.SizePerPageDropDown = SizePerPageDropDown;\n}\nexport {\n BootstrapTable,\n TableHeaderColumn,\n InsertModalHeader,\n InsertModalBody,\n InsertModalFooter,\n InsertButton,\n DeleteButton,\n ShowSelectedOnlyButton,\n ExportCSVButton,\n ClearSearchButton,\n SearchField,\n ButtonGroup,\n SizePerPageDropDown\n};\n\n\n\n// WEBPACK FOOTER //\n// src/index.js","/* eslint no-alert: 0 */\n/* eslint max-len: 0 */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport classSet from 'classnames';\nimport Alert from 'react-s-alert';\nimport Const from './Const';\nimport TableHeaderColumn from './TableHeaderColumn';\nimport TableHeader from './TableHeader';\nimport TableFooter from './TableFooter';\nimport TableBody from './TableBody';\nimport PaginationList from './pagination/PaginationList';\nimport ToolBar from './toolbar/ToolBar';\nimport TableFilter from './TableFilter';\nimport { TableDataStore } from './store/TableDataStore';\nimport Util from './util';\nimport exportCSVUtil from './csv_export_util';\nimport { Filter } from './Filter';\n\n\nclass BootstrapTable extends Component {\n\n constructor(props) {\n super(props);\n this.isIE = false;\n if (Util.canUseDOM()) {\n this.isIE = document.documentMode;\n }\n this.store = new TableDataStore(this.props.data ? this.props.data.slice() : []);\n this.isVerticalScroll = false;\n this.initTable(this.props);\n\n if (this.props.selectRow && this.props.selectRow.selected) {\n const copy = this.props.selectRow.selected.slice();\n this.store.setSelectedRowKey(copy);\n }\n let currPage = Const.PAGE_START_INDEX;\n if (typeof this.props.options.page !== 'undefined') {\n currPage = this.props.options.page;\n } else if (typeof this.props.options.pageStartIndex !== 'undefined') {\n currPage = this.props.options.pageStartIndex;\n }\n\n this._adjustHeaderWidth = this._adjustHeaderWidth.bind(this);\n this._adjustHeight = this._adjustHeight.bind(this);\n this._adjustTable = this._adjustTable.bind(this);\n this.toggleExpandAllChilds = this.toggleExpandAllChilds.bind(this);\n\n let expandedKeys = [];\n if (this.props.options.expandAllChilds !== null &&\n this.props.options.expandAllChilds !== undefined && this.props.options.expandAllChilds) {\n expandedKeys = this.store.getAllRowkey();\n } else if (this.props.options.expanding !== undefined && this.props.options.expanding !== null) {\n expandedKeys = this.props.options.expanding;\n }\n\n this.state = {\n data: this.getTableData(),\n currPage: currPage,\n expanding: expandedKeys,\n sizePerPage: this.props.options.sizePerPage || Const.SIZE_PER_PAGE_LIST[0],\n selectedRowKeys: this.store.getSelectedRowKeys(),\n reset: false,\n x: this.props.keyBoardNav ? 0 : -1,\n y: this.props.keyBoardNav ? 0 : -1\n };\n }\n\n initTable(props) {\n // If columns changed, clean removed columns that had filters\n if (props.children !== this.props.children && this.filter) {\n const nextDataFields = React.Children.map(props.children, column => column.props.dataField);\n React.Children.forEach(this.props.children, column => {\n const { dataField, filter } = column.props;\n if (filter && !nextDataFields.includes(dataField)) {\n // Clear filter\n this.filter.handleFilter(dataField, '', filter.type, filter);\n }\n });\n }\n\n let { keyField } = props;\n\n const isKeyFieldDefined = typeof keyField === 'string' && keyField.length;\n React.Children.forEach(props.children, column => {\n if (column === null || column === undefined) {\n // Skip null and undefined value\n return;\n }\n if (column.props.isKey) {\n if (keyField) {\n throw new Error('Error. Multiple key column detected in TableHeaderColumn.');\n }\n keyField = column.props.dataField;\n }\n if (column.props.filter) {\n // a column contains a filter\n if (!this.filter) {\n // first time create the filter on the BootstrapTable\n this.filter = new Filter();\n }\n // pass the filter to column with filter\n column.props.filter.emitter = this.filter;\n }\n });\n\n // if a column filter was created, add 'onFilterChange' listener\n if (this.filter) {\n this.filter.removeAllListeners('onFilterChange');\n this.filter.on('onFilterChange', (currentFilter) => {\n this.handleFilterData(currentFilter);\n });\n }\n\n this.colInfos = this.getColumnsDescription(props).reduce(( prev, curr ) => {\n prev[curr.name] = curr;\n return prev;\n }, {});\n\n if (!isKeyFieldDefined && !keyField) {\n throw new Error(`Error. No any key column defined in TableHeaderColumn.\n Use 'isKey={true}' to specify a unique column after version 0.5.4.`);\n }\n\n this.store.setProps({\n isPagination: props.pagination,\n keyField: keyField,\n colInfos: this.colInfos,\n multiColumnSearch: props.multiColumnSearch,\n strictSearch: props.strictSearch,\n multiColumnSort: props.multiColumnSort,\n remote: this.props.remote\n });\n }\n\n getTableData() {\n let result = [];\n const { options, pagination } = this.props;\n const sortName = options.defaultSortName || options.sortName;\n const sortOrder = options.defaultSortOrder || options.sortOrder;\n const searchText = options.defaultSearch;\n\n if (sortName && sortOrder) {\n this.store.setSortInfo(sortOrder, sortName);\n if (!this.allowRemote(Const.REMOTE_SORT)) {\n this.store.sort();\n }\n }\n\n if (searchText) {\n this.store.search(searchText);\n }\n\n if (pagination) {\n let page;\n let sizePerPage;\n if (this.store.isChangedPage()) {\n sizePerPage = this.state.sizePerPage;\n page = this.state.currPage;\n } else {\n sizePerPage = options.sizePerPage || Const.SIZE_PER_PAGE_LIST[0];\n page = options.page || 1;\n }\n result = this.store.page(page, sizePerPage).get();\n } else {\n result = this.store.get();\n }\n return result;\n }\n\n getColumnsDescription({ children }) {\n let rowCount = 0;\n React.Children.forEach(children, (column) => {\n if (column === null || column === undefined) {\n // Skip null and undefined value\n return;\n }\n\n if (Number(column.props.row) > rowCount) {\n rowCount = Number(column.props.row);\n }\n });\n return React.Children.map(children, (column, i) => {\n if (column === null || column === undefined) {\n // Return null for empty objects\n return null;\n }\n\n const rowIndex = column.props.row ? Number(column.props.row) : 0;\n const rowSpan = column.props.rowSpan ? Number(column.props.rowSpan) : 1;\n if ((rowSpan + rowIndex) === (rowCount + 1)) {\n const columnDescription = this.getColumnDescription(column);\n\n columnDescription.index = i;\n return columnDescription;\n }\n });\n }\n\n getColumnDescription(column) {\n let columnDescription = {\n name: column.props.dataField,\n align: column.props.dataAlign,\n sort: column.props.dataSort,\n format: column.props.dataFormat,\n formatExtraData: column.props.formatExtraData,\n filterFormatted: column.props.filterFormatted,\n filterValue: column.props.filterValue,\n editable: column.props.editable,\n customEditor: column.props.customEditor,\n hidden: column.props.hidden,\n hiddenOnInsert: column.props.hiddenOnInsert,\n searchable: column.props.searchable,\n className: column.props.columnClassName,\n editClassName: column.props.editColumnClassName,\n invalidEditColumnClassName: column.props.invalidEditColumnClassName,\n columnTitle: column.props.columnTitle,\n width: column.props.width,\n text: column.props.headerText || column.props.children,\n sortFunc: column.props.sortFunc,\n sortFuncExtraData: column.props.sortFuncExtraData,\n export: column.props.export,\n expandable: column.props.expandable,\n attrs: column.props.tdAttr,\n editAttrs: column.props.editTdAttr,\n style: column.props.tdStyle\n };\n\n if (column.type.name !== TableHeaderColumn.name && React.isValidElement(column.props.children)) {\n columnDescription = {\n ...columnDescription,\n ...this.getColumnDescription(React.Children.only(column.props.children))\n };\n }\n\n return columnDescription;\n }\n\n reset() {\n const { pageStartIndex } = this.props.options;\n this.store.clean();\n this.body.setState({ currEditCell: null });\n this.setState(() => {\n return {\n data: this.getTableData(),\n currPage: Util.getFirstPage(pageStartIndex),\n expanding: [],\n sizePerPage: Const.SIZE_PER_PAGE_LIST[0],\n selectedRowKeys: [],\n reset: true\n };\n });\n }\n\n /* eslint-disable */\n UNSAFE_componentWillReceiveProps(nextProps) {\n /* eslint-enable */\n this.initTable(nextProps);\n const { options, selectRow } = nextProps;\n let { replace } = nextProps;\n replace = replace || this.props.replace;\n\n if (!nextProps.data) {\n return;\n }\n this.store.setData(nextProps.data.slice());\n\n if (!replace) {\n // from #481\n let page = this.state.currPage;\n if (this.props.options.page !== options.page) {\n page = options.page;\n }\n // from #481\n let sizePerPage = this.state.sizePerPage;\n if (this.props.options.sizePerPage !== options.sizePerPage) {\n sizePerPage = options.sizePerPage;\n }\n\n if (this.isRemoteDataSource()) {\n const newState = { sizePerPage, reset: false, currPage: page };\n let data = nextProps.data.slice();\n if (nextProps.pagination && !this.allowRemote(Const.REMOTE_PAGE)) {\n data = this.store.page(page, sizePerPage).get();\n }\n\n if (this.store.isOnFilter) {\n if (this.store.searchText) this.handleSearch(this.store.searchText);\n if (this.store.filterObj) this.handleFilterData(this.store.filterObj);\n newState.currPage = Util.getFirstPage(nextProps.options.pageStartIndex);\n } else {\n if (!this.allowRemote(Const.REMOTE_SORT)) {\n data = this.store.sort().get();\n } else {\n const { options: currentOptions } = this.props;\n const sortName = options.sortName;\n const sortOrder = options.sortOrder;\n if (currentOptions.sortName !== sortName || currentOptions.sortOrder !== sortOrder) {\n this.store.setSortInfo(sortOrder, options.sortName);\n }\n }\n newState.data = data;\n }\n this.setState(() => newState);\n } else {\n // #125\n // remove !options.page for #709\n if (page > Math.ceil(nextProps.data.length / sizePerPage)) {\n page = 1;\n }\n const sortList = this.store.getSortInfo();\n const sortField = options.sortName;\n const sortOrder = options.sortOrder;\n if (sortField && sortOrder) {\n this.store.setSortInfo(sortOrder, sortField);\n this.store.sort();\n } else if (sortList.length > 0) {\n this.store.sort();\n }\n const data = this.store.page(page, sizePerPage).get();\n this.setState(() => {\n return {\n data,\n currPage: page,\n sizePerPage,\n reset: false\n };\n });\n\n if (this.store.isSearching && options.afterSearch) {\n options.afterSearch(this.store.searchText, this.store.getDataIgnoringPagination());\n }\n\n if (this.store.isFiltering && options.afterColumnFilter) {\n options.afterColumnFilter(this.store.filterObj, this.store.getDataIgnoringPagination());\n }\n }\n\n // If setting the expanded rows is being handled externally\n // then overwrite the current expanded rows.\n if (this.props.options.expanding !== options.expanding) {\n this.setState(() => {\n return {\n expanding: options.expanding || []\n };\n });\n }\n\n if (selectRow && selectRow.selected) {\n // set default select rows to store.\n const copy = selectRow.selected.slice();\n this.store.setSelectedRowKey(copy);\n this.setState(() => {\n return {\n selectedRowKeys: copy,\n reset: false\n };\n });\n }\n\n if (selectRow && selectRow.mode !== 'none' && this.state.y !== 0) {\n // If user switched to select row, reset the focus to the first cell\n this.setState(() => {\n return {\n y: 0,\n x: 0\n };\n });\n }\n } else {\n this.reset();\n }\n }\n\n componentDidMount() {\n this._adjustTable();\n window.addEventListener('resize', this._adjustTable);\n this.body.container.addEventListener('scroll', this._scrollHeader);\n if (this.props.footer) {\n this.body.container.addEventListener('scroll', this._scrollFooter);\n }\n if (this.props.scrollTop) {\n this._scrollTop();\n }\n }\n\n componentWillUnmount() {\n window.removeEventListener('resize', this._adjustTable);\n if (this.body && this.body.container) {\n this.body.container.removeEventListener('scroll', this._scrollHeader);\n if (this.props.footer) {\n this.body.container.removeEventListener('scroll', this._scrollFooter);\n }\n }\n if (this.filter) {\n this.filter.removeAllListeners('onFilterChange');\n }\n }\n\n componentDidUpdate() {\n this._adjustTable();\n if (this.props.options.afterTableComplete) {\n this.props.options.afterTableComplete();\n }\n }\n\n /**\n * Returns true if in the current configuration,\n * the datagrid should load its data remotely.\n *\n * @param {Object} [props] Optional. If not given, this.props will be used\n * @return {Boolean}\n */\n isRemoteDataSource(props) {\n const { remote } = (props || this.props);\n return remote === true || Util.isFunction(remote);\n }\n\n /**\n * Returns true if this action can be handled remote store\n * From #990, Sometimes, we need some actions as remote, some actions are handled by default\n * so function will tell you the target action is can be handled as remote or not.\n * @param {String} [action] Required.\n * @param {Object} [props] Optional. If not given, this.props will be used\n * @return {Boolean}\n */\n allowRemote(action, props) {\n const { remote } = (props || this.props);\n if (typeof remote === 'function') {\n const remoteObj = remote(Const.REMOTE);\n return remoteObj[action];\n } else {\n return remote;\n }\n }\n\n render() {\n const style = {\n height: this.props.height,\n maxHeight: this.props.maxHeight\n };\n\n const columns = this.getColumnsDescription(this.props);\n const sortList = this.store.getSortInfo();\n const pagination = this.renderPagination();\n const toolBar = this.renderToolBar();\n const tableFilter = this.renderTableFilter(columns);\n const isSelectAll = this.isSelectAll();\n const expandColumnOptions = this.props.expandColumnOptions;\n if (typeof expandColumnOptions.expandColumnBeforeSelectColumn === 'undefined') {\n expandColumnOptions.expandColumnBeforeSelectColumn = true;\n }\n const colGroups = Util.renderColGroup(columns, this.props.selectRow, expandColumnOptions, this.props.version);\n const tableFooter = this.renderTableFooter(this.props.footerData, this.state.data, columns, colGroups);\n let sortIndicator = this.props.options.sortIndicator;\n if (typeof this.props.options.sortIndicator === 'undefined') sortIndicator = true;\n\n const { paginationPosition = Const.PAGINATION_POS_BOTTOM } = this.props.options;\n const showPaginationOnTop = paginationPosition !== Const.PAGINATION_POS_BOTTOM;\n const showPaginationOnBottom = paginationPosition !== Const.PAGINATION_POS_TOP;\n const selectRow = { ...this.props.selectRow };\n if (this.props.cellEdit && this.props.cellEdit.mode !== Const.CELL_EDIT_NONE) {\n selectRow.clickToSelect = false;\n }\n\n const { toolbarPosition = Const.TOOLBAR_POS_TOP } = this.props.options;\n const showToolbarOnTop = toolbarPosition !== Const.TOOLBAR_POS_BOTTOM;\n const showToolbarOnBottom = toolbarPosition !== Const.TOOLBAR_POS_TOP;\n const { hideRowOnExpand = false } = this.props.options;\n return (\n \n { showToolbarOnTop ? toolBar : null }\n { showPaginationOnTop ? pagination : null }\n
this.table = node }\n className={ classSet('react-bs-table', { 'react-bs-table-bordered': this.props.bordered }, this.props.tableContainerClass) }\n style={ { ...style, ...this.props.tableStyle } }\n onMouseEnter={ this.handleMouseEnter }\n onMouseLeave={ this.handleMouseLeave }>\n
this.header = node }\n version={ this.props.version }\n colGroups={ colGroups }\n headerContainerClass={ this.props.headerContainerClass }\n tableHeaderClass={ this.props.tableHeaderClass }\n style={ this.props.headerStyle }\n rowSelectType={ this.props.selectRow.mode }\n customComponent={ this.props.selectRow.customComponent }\n hideSelectColumn={ this.props.selectRow.hideSelectColumn }\n sortList={ sortList }\n sortIndicator={ sortIndicator }\n onSort={ this.handleSort }\n onSelectAllRow={ this.handleSelectAllRow }\n bordered={ this.props.bordered }\n condensed={ this.props.condensed }\n isFiltered={ this.filter ? true : false }\n isSelectAll={ isSelectAll }\n reset={ this.state.reset }\n expandColumnVisible={ expandColumnOptions.expandColumnVisible }\n expandColumnComponent={ expandColumnOptions.expandColumnComponent }\n expandedColumnHeaderComponent={ expandColumnOptions.expandedColumnHeaderComponent }\n noAnyExpand={ this.state.expanding.length === 0 }\n expandAll={ this.props.options.expandAll }\n toggleExpandAllChilds={ this.toggleExpandAllChilds }\n expandColumnBeforeSelectColumn={ expandColumnOptions.expandColumnBeforeSelectColumn }>\n { this.props.children }\n \n
this.body = node }\n bodyContainerClass={ this.props.bodyContainerClass }\n tableBodyClass={ this.props.tableBodyClass }\n style={ { ...style, ...this.props.bodyStyle } }\n data={ this.state.data }\n version={ this.props.version }\n expandComponent={ this.props.expandComponent }\n expandableRow={ this.props.expandableRow }\n expandRowBgColor={ this.props.options.expandRowBgColor }\n expandBy={ this.props.options.expandBy || Const.EXPAND_BY_ROW }\n expandBodyClass={ this.props.options.expandBodyClass }\n expandParentClass={ this.props.options.expandParentClass }\n columns={ columns }\n trClassName={ this.props.trClassName }\n trStyle={ this.props.trStyle }\n striped={ this.props.striped }\n bordered={ this.props.bordered }\n hover={ this.props.hover }\n keyField={ this.store.getKeyField() }\n condensed={ this.props.condensed }\n selectRow={ selectRow }\n expandColumnOptions={ this.props.expandColumnOptions }\n cellEdit={ this.props.cellEdit }\n selectedRowKeys={ this.state.selectedRowKeys }\n onRowClick={ this.handleRowClick }\n onRowDoubleClick={ this.handleRowDoubleClick }\n onRowMouseOver={ this.handleRowMouseOver }\n onRowMouseOut={ this.handleRowMouseOut }\n onSelectRow={ this.handleSelectRow }\n noDataText={ this.props.options.noDataText }\n withoutNoDataText={ this.props.options.withoutNoDataText }\n expanding={ this.state.expanding }\n onExpand={ this.handleExpandRow }\n onlyOneExpanding={ this.props.options.onlyOneExpanding }\n beforeShowError={ this.props.options.beforeShowError }\n keyBoardNav={ this.props.keyBoardNav }\n onNavigateCell={ this.handleNavigateCell }\n x={ this.state.x }\n y={ this.state.y }\n withoutTabIndex={ this.props.withoutTabIndex }\n hideRowOnExpand={ hideRowOnExpand }\n onEditCell={ this.handleEditCell } />\n {\n tableFooter\n }\n \n { tableFilter }\n { showPaginationOnBottom ? pagination : null }\n\n { showToolbarOnBottom ? toolBar : null }\n { this.props.renderAlert ?
: null }\n
\n );\n }\n\n isSelectAll() {\n if (this.store.isEmpty()) return false;\n const { selectRow: { unselectable, onlyUnselectVisible } } = this.props;\n const keyField = this.store.getKeyField();\n const allRowKeys = onlyUnselectVisible ?\n this.store.get().map(r => r[keyField]) :\n this.store.getAllRowkey();\n let defaultSelectRowKeys = this.store.getSelectedRowKeys();\n\n if (onlyUnselectVisible) {\n defaultSelectRowKeys = defaultSelectRowKeys.filter(x => x !== allRowKeys);\n }\n\n if (defaultSelectRowKeys.length === 0) return false;\n let match = 0;\n let noFound = 0;\n let unSelectableCnt = 0;\n defaultSelectRowKeys.forEach(selected => {\n if (allRowKeys.indexOf(selected) !== -1) match++;\n else noFound++;\n if (unselectable &&\n unselectable.indexOf(selected) !== -1) unSelectableCnt++;\n });\n\n if (noFound === defaultSelectRowKeys.length) return false;\n if (match === allRowKeys.length) {\n return true;\n } else {\n if (unselectable && match <= unSelectableCnt &&\n unSelectableCnt === unselectable.length) return false;\n else return 'indeterminate';\n }\n // return (match === allRowKeys.length) ? true : 'indeterminate';\n }\n\n cleanSelected() {\n this.store.setSelectedRowKey([]);\n this.setState(() => {\n return {\n selectedRowKeys: [],\n reset: false\n };\n });\n }\n\n cleanSort() {\n this.store.cleanSortInfo();\n this.setState(() => {\n return {\n reset: false\n };\n });\n }\n\n handleSort = (order, sortField) => {\n const { autoCollapse: { sort }, options } = this.props;\n if (options.onSortChange) {\n options.onSortChange(sortField, order, this.props);\n }\n this.store.setSortInfo(order, sortField);\n if (this.allowRemote(Const.REMOTE_SORT)) {\n if (sort) {\n this.setState(() => {\n return {\n expanding: []\n };\n });\n }\n return;\n }\n\n const result = this.store.sort().get();\n this.setState(() => {\n const newState = {\n data: result,\n reset: false\n };\n if (sort) newState.expanding = [];\n return newState;\n });\n }\n\n handleExpandRow = (expanding, rowKey, isRowExpanding, event) => {\n const { onExpand } = this.props.options;\n if (onExpand) {\n onExpand(rowKey, !isRowExpanding, event);\n }\n this.setState(() => { return { expanding, reset: false }; }, () => {\n this._adjustHeaderWidth();\n });\n }\n\n toggleExpandAllChilds() {\n const { expanding } = this.state;\n if (expanding.length > 0) {\n this.setState(() => {\n return {\n expanding: [],\n reset: false\n };\n });\n } else {\n this.setState(() => {\n return {\n expanding: this.store.getAllRowkey(),\n reset: false\n };\n });\n }\n }\n\n handlePaginationData = (page, sizePerPage) => {\n const { onPageChange, pageStartIndex } = this.props.options;\n const emptyTable = this.store.isEmpty();\n if (onPageChange) {\n onPageChange(page, sizePerPage);\n }\n\n const state = {\n sizePerPage,\n reset: false\n };\n if (!emptyTable) state.currPage = page;\n this.setState(() => state);\n\n if (this.allowRemote(Const.REMOTE_PAGE) || emptyTable) {\n return;\n }\n\n const result = this.store.page(Util.getNormalizedPage(pageStartIndex, page), sizePerPage).get();\n this.setState(() => { return { data: result, reset: false }; });\n }\n\n handleMouseLeave = () => {\n if (this.props.options.onMouseLeave) {\n this.props.options.onMouseLeave();\n }\n }\n\n handleMouseEnter = () => {\n if (this.props.options.onMouseEnter) {\n this.props.options.onMouseEnter();\n }\n }\n\n handleRowMouseOut = (row, event) => {\n if (this.props.options.onRowMouseOut) {\n this.props.options.onRowMouseOut(row, event);\n }\n }\n\n handleRowMouseOver = (row, event) => {\n if (this.props.options.onRowMouseOver) {\n this.props.options.onRowMouseOver(row, event);\n }\n }\n\n handleNavigateCell = ({ x: offSetX, y: offSetY, lastEditCell }) => {\n const { pagination } = this.props;\n let { x, y, currPage } = this.state;\n\n const columns = this.store.getColInfos();\n const visibleColumnIndices = Object.keys(columns).map((k, index) => columns[k].hidden ? -1 : index).filter(k => k !== -1);\n\n if (visibleColumnIndices.indexOf(x) === 0 && offSetX < 0) {\n x = -1;\n } else if ((visibleColumnIndices.indexOf(x) === (visibleColumnIndices.length - 1) && offSetX >= 1)) {\n x = Object.keys(columns).length;\n } else {\n x = visibleColumnIndices[visibleColumnIndices.indexOf(x) + offSetX];\n }\n y += offSetY;\n\n const visibleRowSize = this.state.data.length;\n const visibleColumnSize = Object.keys(columns).filter(k => !columns[k].hidden).length;\n const hiddenColumnSize = Object.keys(columns).filter(k => columns[k].hidden).length;\n\n if (y >= visibleRowSize) {\n currPage++;\n const lastPage = pagination ? this.pagination.getLastPage() : -1;\n if (currPage <= lastPage) {\n this.handlePaginationData(currPage, this.state.sizePerPage);\n } else {\n return;\n }\n y = 0;\n } else if (y < 0) {\n currPage--;\n if (currPage > 0) {\n this.handlePaginationData(currPage, this.state.sizePerPage);\n } else {\n return;\n }\n y = visibleRowSize - 1;\n } else if (x - hiddenColumnSize >= visibleColumnSize) {\n if ((y + 1) === visibleRowSize) {\n currPage++;\n const lastPage = pagination ? this.pagination.getLastPage() : -1;\n if (currPage <= lastPage) {\n this.handlePaginationData(currPage, this.state.sizePerPage);\n } else {\n return;\n }\n y = 0;\n } else {\n y++;\n }\n x = lastEditCell ? visibleColumnIndices[1] : visibleColumnIndices[0];\n } else if (x < 0) {\n x = visibleColumnIndices[visibleColumnIndices.length - 1];\n if (y === 0) {\n currPage--;\n if (currPage > 0) {\n this.handlePaginationData(currPage, this.state.sizePerPage);\n } else {\n return;\n }\n y = this.state.sizePerPage - 1;\n } else {\n y--;\n }\n }\n this.setState(() => {\n return {\n x, y, currPage, reset: false\n };\n });\n }\n\n handleRowClick = (row, rowIndex, columnIndex, event) => {\n const { options, keyBoardNav } = this.props;\n if (options.onRowClick) {\n options.onRowClick(row, columnIndex, rowIndex, event);\n }\n if (keyBoardNav) {\n let { clickToNav } = typeof keyBoardNav === 'object' ? keyBoardNav : {};\n clickToNav = clickToNav === false ? clickToNav : true;\n if (clickToNav) {\n this.setState(() => {\n return {\n x: columnIndex,\n y: rowIndex,\n reset: false\n };\n });\n }\n }\n }\n\n handleRowDoubleClick = (row, event) => {\n if (this.props.options.onRowDoubleClick) {\n this.props.options.onRowDoubleClick(row, event);\n }\n }\n\n handleSelectAllRow = e => {\n const isSelected = e.currentTarget.checked;\n const keyField = this.store.getKeyField();\n const { selectRow: { onSelectAll, unselectable, selected, onlyUnselectVisible } } = this.props;\n let selectedRowKeys = onlyUnselectVisible ? this.state.selectedRowKeys : [];\n let result = true;\n let rows = this.store.get();\n\n // onlyUnselectVisible default is false, #1276\n if (!isSelected && !onlyUnselectVisible) {\n rows = this.store.getRowByKey(this.state.selectedRowKeys);\n }\n\n if (unselectable && unselectable.length > 0) {\n if (isSelected) {\n rows = rows.filter(r => {\n return unselectable.indexOf(r[keyField]) === -1 ||\n (selected && selected.indexOf(r[keyField]) !== -1);\n });\n } else {\n rows = rows.filter(r => unselectable.indexOf(r[keyField]) === -1);\n }\n }\n\n if (onSelectAll) {\n result = this.props.selectRow.onSelectAll(isSelected, rows);\n }\n\n if (typeof result == 'undefined' || result !== false) {\n if (isSelected) {\n if (Array.isArray(result)) {\n selectedRowKeys = result;\n } else {\n const currentRowKeys = rows.map(r => r[keyField]);\n // onlyUnselectVisible default is false, #1276\n if (onlyUnselectVisible) {\n selectedRowKeys = selectedRowKeys.concat(currentRowKeys);\n } else {\n selectedRowKeys = currentRowKeys;\n }\n }\n } else {\n if (unselectable && selected) {\n selectedRowKeys = selected.filter(r => unselectable.indexOf(r) > -1);\n } else if (onlyUnselectVisible) {\n const currentRowKeys = rows.map(r => r[keyField]);\n selectedRowKeys = selectedRowKeys.filter(k => currentRowKeys.indexOf(k) === -1);\n }\n }\n\n this.store.setSelectedRowKey(selectedRowKeys);\n this.setState(() => { return { selectedRowKeys, reset: false }; });\n }\n }\n\n handleShowOnlySelected = () => {\n this.store.ignoreNonSelected();\n const { pageStartIndex } = this.props.options;\n let result;\n if (this.props.pagination) {\n result = this.store.page(Util.getNormalizedPage(pageStartIndex), this.state.sizePerPage).get();\n } else {\n result = this.store.get();\n }\n this.setState(() => {\n return {\n data: result,\n reset: false,\n currPage: Util.getFirstPage(pageStartIndex)\n };\n });\n }\n\n handleSelectRow = (row, isSelected, e, rowIndex) => {\n let result = true;\n let currSelected = this.store.getSelectedRowKeys();\n const rowKey = row[ this.store.getKeyField() ];\n const { selectRow } = this.props;\n if (selectRow.onSelect) {\n result = selectRow.onSelect(row, isSelected, e, rowIndex);\n }\n\n if (typeof result === 'undefined' || result !== false) {\n if (selectRow.mode === Const.ROW_SELECT_SINGLE) {\n currSelected = isSelected ? [ rowKey ] : [];\n } else {\n if (isSelected) {\n currSelected.push(rowKey);\n } else {\n currSelected = currSelected.filter(key => rowKey !== key);\n }\n }\n\n this.store.setSelectedRowKey(currSelected);\n this.setState(() => {\n return {\n selectedRowKeys: currSelected,\n reset: false\n };\n });\n }\n }\n\n handleEditCell = (newVal, rowIndex, colIndex) => {\n const { beforeSaveCell } = this.props.cellEdit;\n const columns = this.getColumnsDescription(this.props);\n const fieldName = columns[colIndex].name;\n\n const invalid = () => {\n this.setState(() => {\n return {\n data: this.store.get(),\n reset: false\n };\n });\n return;\n };\n\n if (beforeSaveCell) {\n const beforeSaveCellCB = result => {\n this.body.cancelEditCell();\n if (result || result === undefined) {\n this.editCell(newVal, rowIndex, colIndex);\n } else {\n invalid();\n }\n };\n const props = { rowIndex, colIndex };\n const isValid = beforeSaveCell(this.state.data[rowIndex], fieldName, newVal, beforeSaveCellCB, props);\n if (isValid === false && typeof isValid !== 'undefined') {\n return invalid();\n } else if (isValid === Const.AWAIT_BEFORE_CELL_EDIT) {\n /* eslint consistent-return: 0 */\n return isValid;\n }\n }\n this.editCell(newVal, rowIndex, colIndex);\n }\n\n editCell(newVal, rowIndex, colIndex) {\n const { onCellEdit } = this.props.options;\n const { afterSaveCell } = this.props.cellEdit;\n const columns = this.getColumnsDescription(this.props);\n const fieldName = columns[colIndex].name;\n const props = { rowIndex, colIndex };\n if (onCellEdit) {\n newVal = onCellEdit(this.state.data[rowIndex], fieldName, newVal);\n }\n\n if (this.allowRemote(Const.REMOTE_CELL_EDIT)) {\n if (afterSaveCell) {\n afterSaveCell(this.state.data[rowIndex], fieldName, newVal, props);\n }\n return;\n }\n\n const result = this.store.edit(newVal, rowIndex, fieldName).get();\n this.setState(() => {\n return {\n data: result,\n reset: false\n };\n });\n\n if (afterSaveCell) {\n afterSaveCell(this.state.data[rowIndex], fieldName, newVal, props);\n }\n }\n\n handleAddRowAtBegin(newObj) {\n try {\n this.store.addAtBegin(newObj);\n } catch (e) {\n return e;\n }\n this._handleAfterAddingRow(newObj, true);\n }\n\n handleAddRow = newObj => {\n let isAsync = false;\n const { onAddRow } = this.props.options;\n\n const afterHandleAddRow = errMsg => {\n if (isAsync) {\n this.toolbar.afterHandleSaveBtnClick(errMsg);\n } else {\n return errMsg;\n }\n };\n\n const afterAddRowCB = errMsg => {\n if (typeof errMsg !== 'undefined' && errMsg !== '') return afterHandleAddRow(errMsg);\n if (this.allowRemote(Const.REMOTE_INSERT_ROW)) {\n if (this.props.options.afterInsertRow) {\n this.props.options.afterInsertRow(newObj);\n }\n return afterHandleAddRow();\n }\n\n try {\n this.store.add(newObj);\n } catch (e) {\n return afterHandleAddRow(e.message);\n }\n this._handleAfterAddingRow(newObj, false);\n return afterHandleAddRow();\n };\n\n if (onAddRow) {\n const colInfos = this.store.getColInfos();\n const errMsg = onAddRow(newObj, colInfos, afterAddRowCB);\n\n if (errMsg !== '' && errMsg !== false) {\n return errMsg;\n } else if (typeof errMsg === 'undefined') {\n return afterAddRowCB();\n } else {\n isAsync = true;\n return !isAsync;\n }\n } else {\n return afterAddRowCB();\n }\n }\n\n getSizePerPage() {\n return this.state.sizePerPage;\n }\n\n getCurrentPage() {\n return this.state.currPage;\n }\n\n getTableDataIgnorePaging() {\n return this.store.getCurrentDisplayData();\n }\n\n getPageByRowKey = rowKey => {\n const { sizePerPage } = this.state;\n const currentData = this.store.getCurrentDisplayData();\n const keyField = this.store.getKeyField();\n const result = currentData.findIndex((x) => x[ keyField ] === rowKey);\n if (result > -1) {\n return parseInt((result / sizePerPage), 10) + 1;\n } else {\n return result;\n }\n }\n\n handleDropRow = rowKeys => {\n const dropRowKeys = rowKeys ? rowKeys : this.store.getSelectedRowKeys();\n // add confirm before the delete action if that option is set.\n if (dropRowKeys && dropRowKeys.length > 0) {\n if (this.props.options.handleConfirmDeleteRow) {\n this.props.options.handleConfirmDeleteRow(() => {\n this.deleteRow(dropRowKeys);\n }, dropRowKeys);\n } else if (confirm('Are you sure you want to delete?')) {\n this.deleteRow(dropRowKeys);\n }\n }\n }\n\n deleteRow(dropRowKeys) {\n const dropRow = this.store.getRowByKey(dropRowKeys);\n const { onDeleteRow, afterDeleteRow, pageStartIndex } = this.props.options;\n\n if (onDeleteRow) {\n onDeleteRow(dropRowKeys, dropRow);\n }\n\n this.store.setSelectedRowKey([]); // clear selected row key\n\n if (this.allowRemote(Const.REMOTE_DROP_ROW)) {\n if (afterDeleteRow) {\n afterDeleteRow(dropRowKeys, dropRow);\n }\n return;\n }\n\n this.store.remove(dropRowKeys); // remove selected Row\n let result;\n if (this.props.pagination) {\n // debugger;\n const { sizePerPage } = this.state;\n const currLastPage = Math.ceil(this.store.getDataNum() / sizePerPage);\n let { currPage } = this.state;\n if (currPage > currLastPage) currPage = currLastPage;\n // console.log(Util.getNormalizedPage(currPage));\n result = this.store.page(Util.getNormalizedPage(pageStartIndex, currPage), sizePerPage).get();\n this.setState(() => {\n return {\n data: result,\n selectedRowKeys: this.store.getSelectedRowKeys(),\n currPage,\n reset: false\n };\n });\n } else {\n result = this.store.get();\n this.setState(() => {\n return {\n data: result,\n reset: false,\n selectedRowKeys: this.store.getSelectedRowKeys()\n };\n });\n }\n if (afterDeleteRow) {\n afterDeleteRow(dropRowKeys, dropRow);\n }\n }\n\n handleFilterData = filterObj => {\n const { autoCollapse: { filter }, options } = this.props;\n const { onFilterChange, pageStartIndex } = options;\n if (onFilterChange) {\n const colInfos = this.store.getColInfos();\n onFilterChange(filterObj, colInfos);\n }\n\n this.setState(() => {\n const newState = {\n currPage: Util.getFirstPage(pageStartIndex),\n reset: false\n };\n if (filter) newState.expanding = [];\n return newState;\n });\n\n if (this.allowRemote(Const.REMOTE_FILTER)) {\n if (this.props.options.afterColumnFilter) {\n this.props.options.afterColumnFilter(filterObj, this.store.getDataIgnoringPagination());\n }\n return;\n }\n\n this.store.filter(filterObj);\n\n const sortList = this.store.getSortInfo();\n\n if (sortList.length > 0) {\n this.store.sort();\n }\n\n let result;\n\n if (this.props.pagination) {\n const { sizePerPage } = this.state;\n result = this.store.page(Util.getNormalizedPage(pageStartIndex), sizePerPage).get();\n } else {\n result = this.store.get();\n }\n if (this.props.options.afterColumnFilter) {\n this.props.options.afterColumnFilter(filterObj,\n this.store.getDataIgnoringPagination());\n }\n this.setState(() => {\n return {\n data: result,\n reset: false\n };\n });\n }\n\n handleExportCSV = () => {\n let result = {};\n\n let { csvFileName } = this.props;\n const { onExportToCSV, exportCSVSeparator, noAutoBOM, excludeCSVHeader } = this.props.options;\n if (onExportToCSV) {\n result = onExportToCSV();\n } else {\n result = this.store.getDataIgnoringPagination();\n }\n const separator = exportCSVSeparator || Const.DEFAULT_CSV_SEPARATOR;\n const keys = [];\n this.props.children.filter(_ => _ != null).map(function(column) {\n if (column.props.export === true ||\n (typeof column.props.export === 'undefined' &&\n column.props.hidden === false)) {\n keys.push({\n field: column.props.dataField,\n type: column.props.csvFieldType,\n format: column.props.csvFormat,\n extraData: column.props.csvFormatExtraData,\n header: column.props.csvHeader || column.props.dataField,\n row: Number(column.props.row) || 0,\n rowSpan: Number(column.props.rowSpan) || 1,\n colSpan: Number(column.props.colSpan) || 1\n });\n }\n });\n\n if (Util.isFunction(csvFileName)) {\n csvFileName = csvFileName();\n }\n\n exportCSVUtil(result, keys, csvFileName, separator, noAutoBOM, excludeCSVHeader);\n }\n\n handleSearch = searchText => {\n // Set search field if this function being called outside\n // but it's not necessary if calling fron inside.\n if (this.toolbar) {\n this.toolbar.setSearchInput(searchText);\n }\n const { autoCollapse: { search } } = this.props;\n const { onSearchChange, pageStartIndex } = this.props.options;\n if (onSearchChange) {\n const colInfos = this.store.getColInfos();\n onSearchChange(searchText, colInfos, this.props.multiColumnSearch);\n }\n\n this.setState(() => {\n const newState = {\n currPage: Util.getFirstPage(pageStartIndex),\n reset: false\n };\n if (search) newState.expanding = [];\n return newState;\n });\n\n if (this.allowRemote(Const.REMOTE_SEARCH)) {\n if (this.props.options.afterSearch) {\n this.props.options.afterSearch(searchText, this.store.getDataIgnoringPagination());\n }\n return;\n }\n\n\n this.store.search(searchText);\n\n const sortList = this.store.getSortInfo();\n\n if (sortList.length > 0) {\n this.store.sort();\n }\n\n let result;\n if (this.props.pagination) {\n const { sizePerPage } = this.state;\n result = this.store.page(Util.getNormalizedPage(pageStartIndex), sizePerPage).get();\n } else {\n result = this.store.get();\n }\n if (this.props.options.afterSearch) {\n this.props.options.afterSearch(searchText,\n this.store.getDataIgnoringPagination());\n }\n this.setState(() => {\n return {\n data: result,\n reset: false\n };\n });\n }\n\n renderPagination() {\n if (this.props.pagination) {\n let dataSize;\n if (this.allowRemote(Const.REMOTE_PAGE)) {\n dataSize = this.props.fetchInfo.dataTotalSize;\n } else {\n dataSize = this.store.getDataNum();\n }\n const { options } = this.props;\n const withFirstAndLast = options.withFirstAndLast === undefined ? true : options.withFirstAndLast;\n if (Math.ceil(dataSize / this.state.sizePerPage) <= 1 &&\n this.props.ignoreSinglePage) return null;\n return (\n \n
this.pagination = node }\n version={ this.props.version }\n withFirstAndLast={ withFirstAndLast }\n alwaysShowAllBtns={ options.alwaysShowAllBtns }\n currPage={ this.state.currPage }\n changePage={ this.handlePaginationData }\n sizePerPage={ this.state.sizePerPage }\n sizePerPageList={ options.sizePerPageList || Const.SIZE_PER_PAGE_LIST }\n pageStartIndex={ options.pageStartIndex }\n paginationShowsTotal={ options.paginationShowsTotal }\n paginationSize={ options.paginationSize || Const.PAGINATION_SIZE }\n dataSize={ dataSize }\n onSizePerPageList={ options.onSizePerPageList }\n prePage={ options.prePage || Const.PRE_PAGE }\n nextPage={ options.nextPage || Const.NEXT_PAGE }\n firstPage={ options.firstPage || Const.FIRST_PAGE }\n lastPage={ options.lastPage || Const.LAST_PAGE }\n prePageTitle={ options.prePageTitle || Const.PRE_PAGE_TITLE }\n nextPageTitle={ options.nextPageTitle || Const.NEXT_PAGE_TITLE }\n firstPageTitle={ options.firstPageTitle || Const.FIRST_PAGE_TITLE }\n lastPageTitle={ options.lastPageTitle || Const.LAST_PAGE_TITLE }\n hideSizePerPage={ options.hideSizePerPage }\n sizePerPageDropDown={ options.sizePerPageDropDown }\n hidePageListOnlyOnePage={ options.hidePageListOnlyOnePage }\n paginationPanel={ options.paginationPanel }\n keepSizePerPageState={ options.keepSizePerPageState }\n open={ false }/>\n \n );\n }\n return null;\n }\n\n renderToolBar() {\n const { exportCSV, selectRow, insertRow, deleteRow, search, children, keyField } = this.props;\n const enableShowOnlySelected = selectRow && selectRow.showOnlySelected;\n const print = typeof this.props.options.printToolBar === 'undefined' ?\n true : this.props.options.printToolBar;\n if (enableShowOnlySelected\n || insertRow\n || deleteRow\n || search\n || exportCSV\n || this.props.options.searchPanel\n || this.props.options.btnGroup\n || this.props.options.toolBar) {\n let columns;\n if (Array.isArray(children)) {\n columns = children.filter(_ => _ != null).map((column, r) => {\n if (!column) return;\n const { props } = column;\n const isKey = props.isKey || keyField === props.dataField;\n return {\n isKey,\n name: props.headerText || props.children,\n field: props.dataField,\n hiddenOnInsert: props.hiddenOnInsert,\n keyValidator: props.keyValidator,\n customInsertEditor: props.customInsertEditor,\n // when you want same auto generate value and not allow edit, example ID field\n autoValue: props.autoValue || false,\n // for create editor, no params for column.editable() indicate that editor for new row\n editable: props.editable && (Util.isFunction(props.editable === 'function')) ? props.editable() : props.editable,\n format: props.dataFormat ? function(value) {\n return props.dataFormat(value, null, props.formatExtraData, r).replace(/<.*?>/g, '');\n } : false\n };\n });\n } else {\n columns = [ {\n name: children.props.headerText || children.props.children,\n field: children.props.dataField,\n editable: children.props.editable,\n customInsertEditor: children.props.customInsertEditor,\n hiddenOnInsert: children.props.hiddenOnInsert,\n keyValidator: children.props.keyValidator\n } ];\n }\n return (\n \n this.toolbar = node }\n version={ this.props.version }\n defaultSearch={ this.props.options.defaultSearch }\n clearSearch={ this.props.options.clearSearch }\n searchPosition={ this.props.options.searchPosition }\n searchDelayTime={ this.props.options.searchDelayTime }\n enableInsert={ insertRow }\n enableDelete={ deleteRow }\n enableSearch={ search }\n enableExportCSV={ exportCSV }\n enableShowOnlySelected={ enableShowOnlySelected }\n columns={ columns }\n searchPlaceholder={ this.props.searchPlaceholder }\n exportCSVText={ this.props.options.exportCSVText }\n insertText={ this.props.options.insertText }\n deleteText={ this.props.options.deleteText }\n saveText= { this.props.options.saveText }\n closeText= { this.props.options.closeText }\n ignoreEditable={ this.props.options.ignoreEditable }\n onAddRow={ this.handleAddRow }\n onDropRow={ this.handleDropRow }\n onSearch={ this.handleSearch }\n onExportCSV={ this.handleExportCSV }\n onShowOnlySelected={ this.handleShowOnlySelected }\n insertModalHeader={ this.props.options.insertModalHeader }\n insertModalFooter={ this.props.options.insertModalFooter }\n insertModalBody={ this.props.options.insertModalBody }\n insertModal={ this.props.options.insertModal }\n insertBtn={ this.props.options.insertBtn }\n deleteBtn={ this.props.options.deleteBtn }\n showSelectedOnlyBtn={ this.props.options.showSelectedOnlyBtn }\n exportCSVBtn={ this.props.options.exportCSVBtn }\n clearSearchBtn={ this.props.options.clearSearchBtn }\n searchField={ this.props.options.searchField }\n searchPanel={ this.props.options.searchPanel }\n btnGroup={ this.props.options.btnGroup }\n toolBar={ this.props.options.toolBar }\n reset={ this.state.reset }\n isValidKey={ this.store.isValidKey }\n insertFailIndicator={ this.props.options.insertFailIndicator || Const.INSERT_FAIL_INDICATOR } />\n
\n );\n } else {\n return null;\n }\n }\n\n renderTableFilter(columns) {\n if (this.props.columnFilter) {\n return (\n \n );\n } else {\n return null;\n }\n }\n\n renderTableFooter(footerData, footerFormatterReturnData, columns, colGroups) {\n if (this.props.footer) {\n let hideSelectColumn = true;\n const { mode } = this.props.selectRow;\n const isSelectRowDefined = Util.isSelectRowDefined(mode);\n if (isSelectRowDefined) {\n hideSelectColumn = this.props.selectRow.hideSelectColumn;\n }\n return (\n this.footer = node }\n columns={ columns }\n colGroups={ colGroups }\n footerFormatterReturnData={ footerFormatterReturnData }\n tableFooterClass={ this.props.tableFooterClass }\n style={ this.props.headerStyle }\n hideSelectColumn={ hideSelectColumn }\n expandColumnVisible={ this.props.expandColumnOptions.expandColumnVisible }\n bordered={ this.props.bordered }\n condensed={ this.props.condensed }\n isFiltered={ this.filter ? true : false }\n showStickyColumn={ this.props.showStickyColumn }>\n { footerData }\n \n );\n }\n return null;\n }\n\n _scrollTop = () => {\n const { scrollTop } = this.props;\n if (scrollTop === Const.SCROLL_TOP) {\n this.body.container.scrollTop = 0;\n } else if (scrollTop === Const.SCROLL_BOTTOM) {\n this.body.container.scrollTop = this.body.container.scrollHeight;\n } else if (typeof scrollTop === 'number' && !isNaN(scrollTop)) {\n this.body.container.scrollTop = scrollTop;\n }\n }\n _scrollHeader = (e) => {\n this.header.container.scrollLeft = e.currentTarget.scrollLeft;\n }\n\n _scrollFooter = (e) => {\n if (this.props.footer) {\n this.footer.container.scrollLeft = e.currentTarget.scrollLeft;\n }\n }\n\n _adjustTable() {\n this._adjustHeight();\n if (!this.props.printable) {\n this._adjustHeaderWidth();\n }\n }\n\n _adjustHeaderWidth() {\n const header = this.header.getHeaderColGrouop();\n const tbody = this.body.tbody;\n const bodyHeader = this.body.getHeaderColGrouop();\n const firstRow = tbody.childNodes[0];\n const isScroll = tbody.parentNode.getBoundingClientRect().height >\n tbody.parentNode.parentNode.getBoundingClientRect().height;\n\n const scrollBarWidth = isScroll ? Util.getScrollBarWidth() : 0;\n if (firstRow && this.store.getDataNum()) {\n if (isScroll || this.isVerticalScroll !== isScroll) {\n const cells = firstRow.childNodes;\n for (let i = 0; i < cells.length; i++) {\n const cell = cells[i];\n const computedStyle = window.getComputedStyle(cell);\n let width = parseFloat(computedStyle.width.replace('px', ''));\n if (this.isIE) {\n const paddingLeftWidth = parseFloat(computedStyle.paddingLeft.replace('px', ''));\n const paddingRightWidth = parseFloat(computedStyle.paddingRight.replace('px', ''));\n const borderRightWidth = parseFloat(computedStyle.borderRightWidth.replace('px', ''));\n const borderLeftWidth = parseFloat(computedStyle.borderLeftWidth.replace('px', ''));\n width = width + paddingLeftWidth + paddingRightWidth + borderRightWidth + borderLeftWidth;\n }\n const lastPadding = (cells.length - 1 === i ? scrollBarWidth : 0);\n if (width <= 0) {\n width = 120;\n cell.width = width + lastPadding + 'px';\n }\n const result = width + lastPadding + 'px';\n header[i].style.width = result;\n header[i].style.minWidth = result;\n if (cells.length - 1 === i) {\n bodyHeader[i].style.width = width + 'px';\n bodyHeader[i].style.minWidth = width + 'px';\n } else {\n bodyHeader[i].style.width = result;\n bodyHeader[i].style.minWidth = result;\n }\n }\n }\n } else {\n for (const i in bodyHeader) {\n if (bodyHeader.hasOwnProperty(i)) {\n const child = bodyHeader[i];\n if (child.style) {\n if (child.style.width) {\n header[i].style.width = child.style.width;\n }\n if (child.style.minWidth) {\n header[i].style.minWidth = child.style.minWidth;\n }\n }\n }\n }\n }\n this.isVerticalScroll = isScroll;\n }\n\n _adjustHeight() {\n const { height } = this.props;\n let { maxHeight } = this.props;\n if ((typeof height === 'number' && !isNaN(height)) || height.indexOf('%') === -1) {\n this.body.container.style.height =\n parseFloat(height, 10) - this.header.container.offsetHeight + 'px';\n }\n if (maxHeight) {\n maxHeight = typeof maxHeight === 'number' ?\n maxHeight :\n parseInt(maxHeight.replace('px', ''), 10);\n\n this.body.container.style.maxHeight =\n maxHeight - this.header.container.offsetHeight + 'px';\n }\n }\n\n _handleAfterAddingRow(newObj, atTheBeginning) {\n let result;\n if (this.props.pagination) {\n // if pagination is enabled and inserting row at the end,\n // change page to the last page\n // otherwise, change it to the first page\n const { sizePerPage } = this.state;\n\n if (atTheBeginning) {\n const { pageStartIndex } = this.props.options;\n result = this.store.page(Util.getNormalizedPage(pageStartIndex), sizePerPage).get();\n this.setState(() => {\n return {\n data: result,\n currPage: Util.getFirstPage(pageStartIndex),\n reset: false\n };\n });\n } else {\n const currLastPage = Math.ceil(this.store.getDataNum() / sizePerPage);\n result = this.store.page(currLastPage, sizePerPage).get();\n this.setState(() => {\n return {\n data: result,\n currPage: currLastPage,\n reset: false\n };\n });\n }\n } else {\n result = this.store.get();\n this.setState(() => {\n return {\n data: result,\n reset: false\n };\n });\n }\n\n if (this.props.options.afterInsertRow) {\n this.props.options.afterInsertRow(newObj);\n }\n }\n}\n\nBootstrapTable.propTypes = {\n keyField: PropTypes.string,\n height: PropTypes.oneOfType([ PropTypes.string, PropTypes.number ]),\n maxHeight: PropTypes.oneOfType([ PropTypes.string, PropTypes.number ]),\n data: PropTypes.oneOfType([ PropTypes.array, PropTypes.object ]),\n version: PropTypes.string, // bootstrap version\n remote: PropTypes.oneOfType([ PropTypes.bool, PropTypes.func ]), // remote data, default is false\n replace: PropTypes.oneOfType([ PropTypes.bool, PropTypes.func ]),\n scrollTop: PropTypes.oneOfType([ PropTypes.string, PropTypes.number ]),\n striped: PropTypes.bool,\n bordered: PropTypes.bool,\n hover: PropTypes.bool,\n condensed: PropTypes.bool,\n pagination: PropTypes.bool,\n printable: PropTypes.bool,\n withoutTabIndex: PropTypes.bool,\n keyBoardNav: PropTypes.oneOfType([ PropTypes.bool, PropTypes.object ]),\n searchPlaceholder: PropTypes.string,\n selectRow: PropTypes.shape({\n mode: PropTypes.oneOf([\n Const.ROW_SELECT_NONE,\n Const.ROW_SELECT_SINGLE,\n Const.ROW_SELECT_MULTI\n ]),\n customComponent: PropTypes.func,\n bgColor: PropTypes.oneOfType([ PropTypes.string, PropTypes.func ]),\n selected: PropTypes.array,\n onSelect: PropTypes.func,\n onSelectAll: PropTypes.func,\n clickToSelect: PropTypes.bool,\n hideSelectColumn: PropTypes.bool,\n clickToSelectAndEditCell: PropTypes.bool,\n clickToExpand: PropTypes.bool,\n showOnlySelected: PropTypes.bool,\n unselectable: PropTypes.array,\n columnWidth: PropTypes.oneOfType([ PropTypes.number, PropTypes.string ]),\n onlyUnselectVisible: PropTypes.bool\n }),\n cellEdit: PropTypes.shape({\n mode: PropTypes.string,\n blurToSave: PropTypes.bool,\n blurToEscape: PropTypes.bool,\n beforeSaveCell: PropTypes.func,\n afterSaveCell: PropTypes.func,\n nonEditableRows: PropTypes.func\n }),\n insertRow: PropTypes.bool,\n deleteRow: PropTypes.bool,\n search: PropTypes.bool,\n multiColumnSearch: PropTypes.bool,\n strictSearch: PropTypes.bool,\n columnFilter: PropTypes.bool,\n trClassName: PropTypes.any,\n trStyle: PropTypes.any,\n tableStyle: PropTypes.object,\n containerStyle: PropTypes.object,\n headerStyle: PropTypes.object,\n bodyStyle: PropTypes.object,\n containerClass: PropTypes.string,\n tableContainerClass: PropTypes.string,\n headerContainerClass: PropTypes.string,\n bodyContainerClass: PropTypes.string,\n tableHeaderClass: PropTypes.string,\n tableBodyClass: PropTypes.string,\n tableFooterClass: PropTypes.string,\n options: PropTypes.shape({\n clearSearch: PropTypes.bool,\n sortName: PropTypes.oneOfType([ PropTypes.string, PropTypes.array ]),\n sortOrder: PropTypes.oneOfType([ PropTypes.string, PropTypes.array ]),\n defaultSortName: PropTypes.oneOfType([ PropTypes.string, PropTypes.array ]),\n defaultSortOrder: PropTypes.oneOfType([ PropTypes.string, PropTypes.array ]),\n sortIndicator: PropTypes.bool,\n afterTableComplete: PropTypes.func,\n afterDeleteRow: PropTypes.func,\n afterInsertRow: PropTypes.func,\n afterSearch: PropTypes.func,\n afterColumnFilter: PropTypes.func,\n onRowClick: PropTypes.func,\n onRowDoubleClick: PropTypes.func,\n page: PropTypes.number,\n pageStartIndex: PropTypes.number,\n paginationShowsTotal: PropTypes.oneOfType([ PropTypes.bool, PropTypes.func ]),\n sizePerPageList: PropTypes.array,\n sizePerPage: PropTypes.number,\n paginationSize: PropTypes.number,\n paginationPosition: PropTypes.oneOf([\n Const.PAGINATION_POS_TOP,\n Const.PAGINATION_POS_BOTTOM,\n Const.PAGINATION_POS_BOTH\n ]),\n toolbarPosition: PropTypes.oneOf([\n Const.TOOLBAR_POS_TOP,\n Const.TOOLBAR_POS_BOTTOM,\n Const.TOOLBAR_POS_BOTH\n ]),\n hideSizePerPage: PropTypes.bool,\n hidePageListOnlyOnePage: PropTypes.bool,\n alwaysShowAllBtns: PropTypes.bool,\n withFirstAndLast: PropTypes.bool,\n keepSizePerPageState: PropTypes.bool,\n onSortChange: PropTypes.func,\n onPageChange: PropTypes.func,\n onSizePerPageList: PropTypes.func,\n onFilterChange: PropTypes.func,\n onSearchChange: PropTypes.func,\n onAddRow: PropTypes.func,\n onExportToCSV: PropTypes.func,\n onCellEdit: PropTypes.func,\n noDataText: PropTypes.oneOfType([ PropTypes.string, PropTypes.object ]),\n withoutNoDataText: PropTypes.bool,\n handleConfirmDeleteRow: PropTypes.func,\n prePage: PropTypes.any,\n nextPage: PropTypes.any,\n firstPage: PropTypes.any,\n lastPage: PropTypes.any,\n prePageTitle: PropTypes.string,\n nextPageTitle: PropTypes.string,\n firstPageTitle: PropTypes.string,\n lastPageTitle: PropTypes.string,\n searchDelayTime: PropTypes.number,\n excludeCSVHeader: PropTypes.bool,\n exportCSVText: PropTypes.string,\n exportCSVSeparator: PropTypes.string,\n insertText: PropTypes.string,\n deleteText: PropTypes.string,\n saveText: PropTypes.string,\n closeText: PropTypes.string,\n ignoreEditable: PropTypes.bool,\n defaultSearch: PropTypes.string,\n insertModalHeader: PropTypes.func,\n insertModalBody: PropTypes.func,\n insertModalFooter: PropTypes.func,\n insertModal: PropTypes.func,\n insertBtn: PropTypes.func,\n deleteBtn: PropTypes.func,\n showSelectedOnlyBtn: PropTypes.func,\n exportCSVBtn: PropTypes.func,\n clearSearchBtn: PropTypes.func,\n searchField: PropTypes.func,\n searchPanel: PropTypes.func,\n btnGroup: PropTypes.func,\n toolBar: PropTypes.func,\n sizePerPageDropDown: PropTypes.func,\n paginationPanel: PropTypes.func,\n searchPosition: PropTypes.string,\n expandRowBgColor: PropTypes.string,\n expandBy: PropTypes.string,\n expanding: PropTypes.array,\n onExpand: PropTypes.func,\n onlyOneExpanding: PropTypes.bool,\n expandBodyClass: PropTypes.oneOfType([ PropTypes.string, PropTypes.func ]),\n expandParentClass: PropTypes.oneOfType([ PropTypes.string, PropTypes.func ]),\n beforeShowError: PropTypes.func,\n printToolBar: PropTypes.bool,\n insertFailIndicator: PropTypes.string,\n noAutoBOM: PropTypes.bool,\n expandAll: PropTypes.bool,\n hideRowOnExpand: PropTypes.bool\n }),\n fetchInfo: PropTypes.shape({\n dataTotalSize: PropTypes.number\n }),\n renderAlert: PropTypes.bool,\n exportCSV: PropTypes.bool,\n csvFileName: PropTypes.oneOfType([ PropTypes.string, PropTypes.func ]),\n ignoreSinglePage: PropTypes.bool,\n expandableRow: PropTypes.func,\n expandComponent: PropTypes.func,\n autoCollapse: PropTypes.shape({\n sort: PropTypes.bool,\n filter: PropTypes.bool,\n search: PropTypes.bool\n }),\n expandColumnOptions: PropTypes.shape({\n columnWidth: PropTypes.oneOfType([ PropTypes.number, PropTypes.string ]),\n expandColumnVisible: PropTypes.bool,\n expandColumnComponent: PropTypes.func,\n expandedColumnHeaderComponent: PropTypes.func,\n expandColumnBeforeSelectColumn: PropTypes.bool\n }),\n footer: PropTypes.bool\n};\nBootstrapTable.defaultProps = {\n version: '3',\n replace: false,\n scrollTop: undefined,\n expandComponent: undefined,\n expandableRow: undefined,\n expandColumnOptions: {\n expandColumnVisible: false,\n expandColumnComponent: undefined,\n expandedColumnHeaderComponent: undefined,\n expandColumnBeforeSelectColumn: true\n },\n height: '100%',\n maxHeight: undefined,\n striped: false,\n bordered: true,\n hover: false,\n condensed: false,\n pagination: false,\n printable: false,\n withoutTabIndex: false,\n keyBoardNav: false,\n searchPlaceholder: undefined,\n selectRow: {\n mode: Const.ROW_SELECT_NONE,\n bgColor: Const.ROW_SELECT_BG_COLOR,\n selected: [],\n onSelect: undefined,\n onSelectAll: undefined,\n clickToSelect: false,\n hideSelectColumn: false,\n clickToSelectAndEditCell: false,\n clickToExpand: false,\n showOnlySelected: false,\n unselectable: [],\n customComponent: undefined,\n onlyUnselectVisible: false\n },\n cellEdit: {\n mode: Const.CELL_EDIT_NONE,\n blurToSave: false,\n blurToEscape: false,\n beforeSaveCell: undefined,\n afterSaveCell: undefined,\n nonEditableRows: undefined\n },\n insertRow: false,\n deleteRow: false,\n search: false,\n multiColumnSearch: false,\n strictSearch: undefined,\n multiColumnSort: 1,\n columnFilter: false,\n trClassName: '',\n trStyle: undefined,\n tableStyle: undefined,\n containerStyle: undefined,\n headerStyle: undefined,\n bodyStyle: undefined,\n containerClass: null,\n tableContainerClass: null,\n headerContainerClass: null,\n bodyContainerClass: null,\n tableHeaderClass: null,\n tableBodyClass: null,\n tableFooterClass: null,\n options: {\n clearSearch: false,\n sortName: undefined,\n sortOrder: undefined,\n defaultSortName: undefined,\n defaultSortOrder: undefined,\n sortIndicator: true,\n afterTableComplete: undefined,\n afterDeleteRow: undefined,\n afterInsertRow: undefined,\n afterSearch: undefined,\n afterColumnFilter: undefined,\n onRowClick: undefined,\n onRowDoubleClick: undefined,\n onMouseLeave: undefined,\n onMouseEnter: undefined,\n onRowMouseOut: undefined,\n onRowMouseOver: undefined,\n page: undefined,\n paginationShowsTotal: false,\n sizePerPageList: Const.SIZE_PER_PAGE_LIST,\n sizePerPage: undefined,\n paginationSize: Const.PAGINATION_SIZE,\n paginationPosition: Const.PAGINATION_POS_BOTTOM,\n toolbarPosition: Const.TOOLBAR_POS_TOP,\n hideSizePerPage: false,\n hidePageListOnlyOnePage: false,\n alwaysShowAllBtns: false,\n withFirstAndLast: true,\n keepSizePerPageState: false,\n onSizePerPageList: undefined,\n noDataText: undefined,\n withoutNoDataText: false,\n handleConfirmDeleteRow: undefined,\n prePage: Const.PRE_PAGE,\n nextPage: Const.NEXT_PAGE,\n firstPage: Const.FIRST_PAGE,\n lastPage: Const.LAST_PAGE,\n prePageTitle: Const.PRE_PAGE_TITLE,\n nextPageTitle: Const.NEXT_PAGE_TITLE,\n firstPageTitle: Const.FIRST_PAGE_TITLE,\n lastPageTitle: Const.LAST_PAGE_TITLE,\n pageStartIndex: 1,\n searchDelayTime: undefined,\n excludeCSVHeader: false,\n exportCSVText: Const.EXPORT_CSV_TEXT,\n exportCSVSeparator: Const.DEFAULT_CSV_SEPARATOR,\n insertText: Const.INSERT_BTN_TEXT,\n deleteText: Const.DELETE_BTN_TEXT,\n saveText: Const.SAVE_BTN_TEXT,\n closeText: Const.CLOSE_BTN_TEXT,\n ignoreEditable: false,\n defaultSearch: '',\n insertModalHeader: undefined,\n insertModalBody: undefined,\n insertModalFooter: undefined,\n insertModal: undefined,\n insertBtn: undefined,\n deleteBtn: undefined,\n showSelectedOnlyBtn: undefined,\n exportCSVBtn: undefined,\n clearSearchBtn: undefined,\n searchField: undefined,\n searchPanel: undefined,\n btnGroup: undefined,\n toolBar: undefined,\n sizePerPageDropDown: undefined,\n paginationPanel: undefined,\n searchPosition: 'right',\n expandRowBgColor: undefined,\n expandBy: Const.EXPAND_BY_ROW,\n expanding: [],\n onExpand: undefined,\n onlyOneExpanding: false,\n expandBodyClass: null,\n expandParentClass: null,\n beforeShowError: undefined,\n printToolBar: true,\n insertFailIndicator: Const.INSERT_FAIL_INDICATOR,\n noAutoBOM: true,\n expandAll: false,\n hideRowOnExpand: false\n },\n fetchInfo: {\n dataTotalSize: 0\n },\n renderAlert: true,\n exportCSV: false,\n csvFileName: 'spreadsheet.csv',\n ignoreSinglePage: false,\n autoCollapse: {\n sort: Const.AUTO_COLLAPSE_WHEN_SORT,\n filter: Const.AUTO_COLLAPSE_WHEN_FILTER,\n search: Const.AUTO_COLLAPSE_WHEN_SEARCH\n },\n footer: false\n};\n\nexport default BootstrapTable;\n\n\n\n// WEBPACK FOOTER //\n// src/BootstrapTable.js","module.exports = __WEBPACK_EXTERNAL_MODULE_2__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external {\"root\":\"React\",\"commonjs2\":\"react\",\"commonjs\":\"react\",\"amd\":\"react\"}\n// module id = 2\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/prop-types/index.js\n// module id = 3\n// module chunks = 0","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/process/browser.js\n// module id = 4\n// module chunks = 0","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-is/index.js\n// module id = 5\n// module chunks = 0","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-is/cjs/react-is.production.min.js\n// module id = 6\n// module chunks = 0","/** @license React v16.13.1\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);\n}\n\nfunction typeOf(object) {\n if (typeof object === 'object' && object !== null) {\n var $$typeof = object.$$typeof;\n\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = object.type;\n\n switch (type) {\n case REACT_ASYNC_MODE_TYPE:\n case REACT_CONCURRENT_MODE_TYPE:\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n return type;\n\n default:\n var $$typeofType = type && type.$$typeof;\n\n switch ($$typeofType) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n case REACT_PROVIDER_TYPE:\n return $$typeofType;\n\n default:\n return $$typeof;\n }\n\n }\n\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n\n return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n {\n if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint\n\n console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');\n }\n }\n\n return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\nexports.isValidElementType = isValidElementType;\nexports.typeOf = typeOf;\n })();\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-is/cjs/react-is.development.js\n// module id = 7\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactIs = require('react-is');\nvar assign = require('object-assign');\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\nvar checkPropTypes = require('./checkPropTypes');\n\nvar has = Function.call.bind(Object.prototype.hasOwnProperty);\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n}\n\nfunction emptyFunctionThatReturnsNull() {\n return null;\n}\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n /* global Symbol */\n var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n /**\n * Returns the iterator method function contained on the iterable object.\n *\n * Be sure to invoke the function with the iterable as context:\n *\n * var iteratorFn = getIteratorFn(myIterable);\n * if (iteratorFn) {\n * var iterator = iteratorFn.call(myIterable);\n * ...\n * }\n *\n * @param {?object} maybeIterable\n * @return {?function}\n */\n function getIteratorFn(maybeIterable) {\n var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n }\n\n /**\n * Collection of methods that allow declaration and validation of props that are\n * supplied to React components. Example usage:\n *\n * var Props = require('ReactPropTypes');\n * var MyArticle = React.createClass({\n * propTypes: {\n * // An optional string prop named \"description\".\n * description: Props.string,\n *\n * // A required enum prop named \"category\".\n * category: Props.oneOf(['News','Photos']).isRequired,\n *\n * // A prop named \"dialog\" that requires an instance of Dialog.\n * dialog: Props.instanceOf(Dialog).isRequired\n * },\n * render: function() { ... }\n * });\n *\n * A more formal specification of how these methods are used:\n *\n * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n * decl := ReactPropTypes.{type}(.isRequired)?\n *\n * Each and every declaration produces a function with the same signature. This\n * allows the creation of custom validation functions. For example:\n *\n * var MyLink = React.createClass({\n * propTypes: {\n * // An optional string or URI prop named \"href\".\n * href: function(props, propName, componentName) {\n * var propValue = props[propName];\n * if (propValue != null && typeof propValue !== 'string' &&\n * !(propValue instanceof URI)) {\n * return new Error(\n * 'Expected a string or an URI for ' + propName + ' in ' +\n * componentName\n * );\n * }\n * }\n * },\n * render: function() {...}\n * });\n *\n * @internal\n */\n\n var ANONYMOUS = '<>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n elementType: createElementTypeTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker,\n exact: createStrictShapeTypeChecker,\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message) {\n this.message = message;\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (process.env.NODE_ENV !== 'production') {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n printWarning(\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunctionThatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!ReactIs.isValidElementType(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n if (process.env.NODE_ENV !== 'production') {\n if (arguments.length > 1) {\n printWarning(\n 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +\n 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'\n );\n } else {\n printWarning('Invalid argument supplied to oneOf, expected an array.');\n }\n }\n return emptyFunctionThatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {\n var type = getPreciseType(value);\n if (type === 'symbol') {\n return String(value);\n }\n return value;\n });\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (has(propValue, key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n return emptyFunctionThatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n printWarning(\n 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'\n );\n return emptyFunctionThatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {\n return null;\n }\n }\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (!checker) {\n continue;\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createStrictShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n // We need to check all keys in case some are required but missing from\n // props.\n var allKeys = assign({}, props[propName], shapeTypes);\n for (var key in allKeys) {\n var checker = shapeTypes[key];\n if (!checker) {\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n );\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // falsy value can't be a Symbol\n if (!propValue) {\n return false;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/prop-types/factoryWithTypeCheckers.js\n// module id = 8\n// module chunks = 0","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/object-assign/index.js\n// module id = 9\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/prop-types/lib/ReactPropTypesSecret.js\n// module id = 10\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n var loggedTypeFailures = {};\n var has = Function.call.bind(Object.prototype.hasOwnProperty);\n\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n if (process.env.NODE_ENV !== 'production') {\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error;\n // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n var err = Error(\n (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.'\n );\n err.name = 'Invariant Violation';\n throw err;\n }\n error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n } catch (ex) {\n error = ex;\n }\n if (error && !(error instanceof Error)) {\n printWarning(\n (componentName || 'React class') + ': type specification of ' +\n location + ' `' + typeSpecName + '` is invalid; the type checker ' +\n 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +\n 'You may have forgotten to pass an argument to the type checker ' +\n 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +\n 'shape all require an argument).'\n );\n }\n if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error.message] = true;\n\n var stack = getStack ? getStack() : '';\n\n printWarning(\n 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')\n );\n }\n }\n }\n }\n}\n\n/**\n * Resets warning cache when testing.\n *\n * @private\n */\ncheckPropTypes.resetWarningCache = function() {\n if (process.env.NODE_ENV !== 'production') {\n loggedTypeFailures = {};\n }\n}\n\nmodule.exports = checkPropTypes;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/prop-types/checkPropTypes.js\n// module id = 11\n// module chunks = 0","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/prop-types/factoryWithThrowingShims.js\n// module id = 12\n// module chunks = 0","/*!\n Copyright (c) 2017 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg) && arg.length) {\n\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\tif (inner) {\n\t\t\t\t\tclasses.push(inner);\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/classnames/index.js\n// module id = 13\n// module chunks = 0","module.exports = require('./dist/SAlert');\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-s-alert/index.js\n// module id = 14\n// module chunks = 0","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['exports', 'react', './SAlertContent', 'prop-types', './s-alert-parts/s-alert-store', './s-alert-parts/s-alert-tools', './s-alert-parts/s-alert-data-prep'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(exports, require('react'), require('./SAlertContent'), require('prop-types'), require('./s-alert-parts/s-alert-store'), require('./s-alert-parts/s-alert-tools'), require('./s-alert-parts/s-alert-data-prep'));\n } else {\n var mod = {\n exports: {}\n };\n factory(mod.exports, global.react, global.SAlertContent, global.propTypes, global.sAlertStore, global.sAlertTools, global.sAlertDataPrep);\n global.SAlert = mod.exports;\n }\n})(this, function (exports, _react, _SAlertContent, _propTypes, _sAlertStore, _sAlertTools, _sAlertDataPrep) {\n 'use strict';\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n\n var _react2 = _interopRequireDefault(_react);\n\n var _SAlertContent2 = _interopRequireDefault(_SAlertContent);\n\n var _propTypes2 = _interopRequireDefault(_propTypes);\n\n var _sAlertStore2 = _interopRequireDefault(_sAlertStore);\n\n var _sAlertTools2 = _interopRequireDefault(_sAlertTools);\n\n var _sAlertDataPrep2 = _interopRequireDefault(_sAlertDataPrep);\n\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n }\n\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n\n var _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n }();\n\n function _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n }\n\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n }\n\n var _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n var insertFunc = function insertFunc(msg, data, condition) {\n var id = _sAlertTools2.default.randomId();\n _sAlertStore2.default.dispatch({\n type: 'INSERT',\n data: _extends({}, data, {\n id: id,\n condition: condition,\n message: msg\n })\n });\n return id;\n };\n\n var SAlert = function (_React$Component) {\n _inherits(SAlert, _React$Component);\n\n function SAlert(props) {\n _classCallCheck(this, SAlert);\n\n var _this = _possibleConstructorReturn(this, (SAlert.__proto__ || Object.getPrototypeOf(SAlert)).call(this, props));\n\n _this.state = {\n dataRight: [],\n dataLeft: [],\n dataTop: [],\n dataBottom: []\n };\n return _this;\n }\n\n _createClass(SAlert, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n var storeStateLeft = void 0;\n var storeStateRight = void 0;\n var storeStateTop = void 0;\n var storeStateBottom = void 0;\n\n var addToStoreRight = function addToStoreRight() {\n requestAnimationFrame(function () {\n return requestAnimationFrame(function () {\n var length = void 0;\n storeStateRight = (0, _sAlertDataPrep2.default)('right', _this2) || [];\n length = storeStateRight.length;\n if (_this2.props.stack && _this2.props.stack.limit && length > _this2.props.stack.limit) {\n var id = storeStateRight[0].id;\n _sAlertStore2.default.dispatch({ type: 'REMOVE', data: { id: id } });\n storeStateRight = (0, _sAlertDataPrep2.default)('right', _this2) || [];\n }\n _this2.setState({ dataRight: storeStateRight });\n });\n });\n };\n this.unsubStoreRight = _sAlertStore2.default.subscribe(addToStoreRight);\n\n var addToStoreLeft = function addToStoreLeft() {\n requestAnimationFrame(function () {\n return requestAnimationFrame(function () {\n var length = void 0;\n storeStateLeft = (0, _sAlertDataPrep2.default)('left', _this2) || [];\n length = storeStateLeft.length;\n if (_this2.props.stack && _this2.props.stack.limit && length > _this2.props.stack.limit) {\n var id = storeStateLeft[0].id;\n _sAlertStore2.default.dispatch({ type: 'REMOVE', data: { id: id } });\n storeStateLeft = (0, _sAlertDataPrep2.default)('left', _this2) || [];\n }\n _this2.setState({ dataLeft: storeStateLeft });\n });\n });\n };\n this.unsubStoreLeft = _sAlertStore2.default.subscribe(addToStoreLeft);\n\n var addToStoreTop = function addToStoreTop() {\n requestAnimationFrame(function () {\n return requestAnimationFrame(function () {\n var length = void 0;\n storeStateTop = (0, _sAlertDataPrep2.default)('full-top', _this2) || [];\n length = storeStateTop.length;\n if (_this2.props.stack && _this2.props.stack.limit && length > _this2.props.stack.limit) {\n var id = storeStateTop[0].id;\n _sAlertStore2.default.dispatch({ type: 'REMOVE', data: { id: id } });\n storeStateTop = (0, _sAlertDataPrep2.default)('full-top', _this2) || [];\n }\n _this2.setState({ dataTop: storeStateTop });\n });\n });\n };\n this.unsubStoreTop = _sAlertStore2.default.subscribe(addToStoreTop);\n\n var addToStoreBottom = function addToStoreBottom() {\n requestAnimationFrame(function () {\n return requestAnimationFrame(function () {\n var length = void 0;\n storeStateBottom = (0, _sAlertDataPrep2.default)('full-bottom', _this2) || [];\n length = storeStateBottom.length;\n if (_this2.props.stack && _this2.props.stack.limit && length > _this2.props.stack.limit) {\n var id = storeStateBottom[0].id;\n _sAlertStore2.default.dispatch({ type: 'REMOVE', data: { id: id } });\n storeStateBottom = (0, _sAlertDataPrep2.default)('full-bottom', _this2) || [];\n }\n _this2.setState({ dataBottom: storeStateBottom });\n });\n });\n };\n this.unsubStoreBottom = _sAlertStore2.default.subscribe(addToStoreBottom);\n\n // set up global config from global SAlert props\n // only stuff needed for getAlertData\n var globalConfig = {\n contentTemplate: this.props.contentTemplate,\n offset: this.props.offset,\n message: this.props.message,\n stack: this.props.stack,\n html: this.props.html,\n customFields: this.props.customFields,\n position: this.props.position || 'top-right',\n preserveContext: this.props.preserveContext || false\n };\n _sAlertTools2.default.setGlobalConfig(globalConfig);\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n this.unsubStoreTop();\n this.unsubStoreBottom();\n this.unsubStoreLeft();\n this.unsubStoreRight();\n }\n }, {\n key: 'render',\n value: function render() {\n var _this3 = this;\n\n var mapFunc = function mapFunc(alert, index) {\n var customKey = 'alert-key-' + alert.id + '-' + alert.position;\n var id = alert.id;\n var condition = _sAlertTools2.default.returnFirstDefined(alert.condition, 'info');\n var message = _sAlertTools2.default.returnFirstDefined(alert.message, _this3.props.message, '');\n var position = _sAlertTools2.default.returnFirstDefined(alert.position, _this3.props.position, 'top-right');\n var offset = _sAlertTools2.default.returnFirstDefined(alert.offset, _this3.props.offset, 0);\n var effect = _sAlertTools2.default.returnFirstDefined(alert.effect, _this3.props.effect);\n var boxPosition = alert.boxPosition;\n var beep = _sAlertTools2.default.returnFirstDefined(alert.beep, _this3.props.beep, false);\n var timeout = _sAlertTools2.default.returnFirstDefined(alert.timeout, _this3.props.timeout, 5000);\n var html = _sAlertTools2.default.returnFirstDefined(alert.html, _this3.props.html);\n var onClose = _sAlertTools2.default.returnFirstDefined(alert.onClose, _this3.props.onClose);\n var onShow = _sAlertTools2.default.returnFirstDefined(alert.onShow, _this3.props.onShow);\n var customFields = _sAlertTools2.default.returnFirstDefined(alert.customFields, _this3.props.customFields);\n var contentTemplate = _this3.props.contentTemplate;\n\n return _react2.default.createElement(_SAlertContent2.default, {\n key: customKey,\n id: id,\n customFields: customFields,\n condition: condition,\n message: message,\n position: position,\n effect: effect,\n boxPosition: boxPosition,\n beep: beep,\n timeout: timeout,\n html: html,\n onClose: onClose,\n onShow: onShow,\n contentTemplate: contentTemplate });\n };\n var sAlertElemsRight = this.state.dataRight.map(mapFunc);\n var sAlertElemsLeft = this.state.dataLeft.map(mapFunc);\n var sAlertElemsTop = this.state.dataTop.map(mapFunc);\n var sAlertElemsBottom = this.state.dataBottom.map(mapFunc);\n return _react2.default.createElement(\n 'div',\n { className: 's-alert-wrapper' },\n sAlertElemsRight,\n sAlertElemsLeft,\n sAlertElemsTop,\n sAlertElemsBottom\n );\n }\n }], [{\n key: 'info',\n value: function info(msg, data) {\n return insertFunc(msg, data, 'info');\n }\n }, {\n key: 'error',\n value: function error(msg, data) {\n return insertFunc(msg, data, 'error');\n }\n }, {\n key: 'warning',\n value: function warning(msg, data) {\n return insertFunc(msg, data, 'warning');\n }\n }, {\n key: 'success',\n value: function success(msg, data) {\n return insertFunc(msg, data, 'success');\n }\n }, {\n key: 'close',\n value: function close(id) {\n _sAlertStore2.default.dispatch({ type: 'REMOVE', data: { id: id } });\n }\n }, {\n key: 'closeAll',\n value: function closeAll() {\n _sAlertStore2.default.dispatch({ type: 'REMOVEALL' });\n }\n }]);\n\n return SAlert;\n }(_react2.default.Component);\n\n SAlert.propTypes = {\n message: _propTypes2.default.string,\n position: _propTypes2.default.string,\n offset: _propTypes2.default.number,\n stack: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.object]),\n effect: _propTypes2.default.string,\n beep: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object, _propTypes2.default.bool]),\n timeout: _propTypes2.default.oneOfType([_propTypes2.default.oneOf(['none']), _propTypes2.default.number]),\n html: _propTypes2.default.bool,\n preserveContext: _propTypes2.default.bool,\n onClose: _propTypes2.default.func,\n onShow: _propTypes2.default.func,\n customFields: _propTypes2.default.object,\n contentTemplate: _propTypes2.default.func\n };\n\n exports.default = SAlert;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-s-alert/dist/SAlert.js\n// module id = 15\n// module chunks = 0","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['exports', 'react', 'react-dom', 'prop-types', './s-alert-parts/s-alert-tools', './s-alert-parts/s-alert-store', './SAlertContentTmpl'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(exports, require('react'), require('react-dom'), require('prop-types'), require('./s-alert-parts/s-alert-tools'), require('./s-alert-parts/s-alert-store'), require('./SAlertContentTmpl'));\n } else {\n var mod = {\n exports: {}\n };\n factory(mod.exports, global.react, global.reactDom, global.propTypes, global.sAlertTools, global.sAlertStore, global.SAlertContentTmpl);\n global.SAlertContent = mod.exports;\n }\n})(this, function (exports, _react, _reactDom, _propTypes, _sAlertTools, _sAlertStore, _SAlertContentTmpl) {\n 'use strict';\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n\n var _react2 = _interopRequireDefault(_react);\n\n var _reactDom2 = _interopRequireDefault(_reactDom);\n\n var _propTypes2 = _interopRequireDefault(_propTypes);\n\n var _sAlertTools2 = _interopRequireDefault(_sAlertTools);\n\n var _sAlertStore2 = _interopRequireDefault(_sAlertStore);\n\n var _SAlertContentTmpl2 = _interopRequireDefault(_SAlertContentTmpl);\n\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n }\n\n var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n\n var _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n }();\n\n function _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n }\n\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n }\n\n var SAlertContent = function (_React$Component) {\n _inherits(SAlertContent, _React$Component);\n\n function SAlertContent(props) {\n _classCallCheck(this, SAlertContent);\n\n return _possibleConstructorReturn(this, (SAlertContent.__proto__ || Object.getPrototypeOf(SAlertContent)).call(this, props));\n }\n\n _createClass(SAlertContent, [{\n key: 'handleCloseAlert',\n value: function handleCloseAlert() {\n var closingTimeout = void 0;\n var alertId = this.props.id;\n var currentAlertElem = _reactDom2.default.findDOMNode(this);\n var animationClose = function animationClose() {\n currentAlertElem.style.display = 'none';\n _sAlertStore2.default.dispatch({ type: 'REMOVE', data: { id: alertId } });\n clearTimeout(closingTimeout);\n };\n if (document.hidden || document.webkitHidden || !currentAlertElem.classList.contains('s-alert-is-effect')) {\n _sAlertStore2.default.dispatch({ type: 'REMOVE', data: { id: alertId } });\n } else {\n currentAlertElem.classList.remove('s-alert-show');\n closingTimeout = setTimeout(function () {\n currentAlertElem.classList.add('s-alert-hide');\n }, 100);\n currentAlertElem.removeEventListener('webkitAnimationEnd', animationClose, false);\n currentAlertElem.removeEventListener('animationend', animationClose, false);\n currentAlertElem.addEventListener('webkitAnimationEnd', animationClose, false);\n currentAlertElem.addEventListener('animationend', animationClose, false);\n }\n // stop audio when closing\n this.alertAudio && this.alertAudio.load();\n }\n }, {\n key: 'componentWillMount',\n value: function componentWillMount() {\n var beep = this.props.beep;\n var condition = this.props.condition;\n if (beep && typeof beep === 'string') {\n this.alertAudio = new Audio(beep);\n this.alertAudio.load();\n this.alertAudio.play();\n }\n if (beep && (typeof beep === 'undefined' ? 'undefined' : _typeof(beep)) === 'object' && condition === 'info') {\n this.alertAudio = new Audio(beep.info);\n this.alertAudio.load();\n this.alertAudio.play();\n }\n if (beep && (typeof beep === 'undefined' ? 'undefined' : _typeof(beep)) === 'object' && condition === 'error') {\n this.alertAudio = new Audio(beep.error);\n this.alertAudio.load();\n this.alertAudio.play();\n }\n if (beep && (typeof beep === 'undefined' ? 'undefined' : _typeof(beep)) === 'object' && condition === 'success') {\n this.alertAudio = new Audio(beep.success);\n this.alertAudio.load();\n this.alertAudio.play();\n }\n if (beep && (typeof beep === 'undefined' ? 'undefined' : _typeof(beep)) === 'object' && condition === 'warning') {\n this.alertAudio = new Audio(beep.warning);\n this.alertAudio.load();\n this.alertAudio.play();\n }\n }\n }, {\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n if (typeof this.props.timeout === 'number') {\n this.closeTimer = setTimeout(function () {\n _this2.handleCloseAlert();\n }, this.props.timeout);\n }\n if (this.props.onShow) {\n this.props.onShow();\n }\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n if (this.closeTimer) {\n clearTimeout(this.closeTimer);\n }\n if (this.props.onClose) {\n this.props.onClose();\n }\n }\n }, {\n key: 'render',\n value: function render() {\n var classNames = 's-alert-box s-alert-' + this.props.condition + ' s-alert-' + this.props.position + ' ' + (this.props.effect ? 's-alert-is-effect s-alert-effect-' + this.props.effect : '') + ' s-alert-show';\n var message = this.props.html ? _react2.default.createElement('span', { dangerouslySetInnerHTML: { __html: this.props.message } }) : this.props.message;\n var styles = this.props.boxPosition ? _sAlertTools2.default.styleToObj(this.props.boxPosition) : {};\n var id = this.props.id;\n var handleClose = this.handleCloseAlert.bind(this);\n var contentTemplate = this.props.contentTemplate || _SAlertContentTmpl2.default;\n var customFields = this.props.customFields || {};\n var condition = this.props.condition;\n\n return _react2.default.createElement(contentTemplate, { classNames: classNames, id: id, styles: styles, message: message, handleClose: handleClose, customFields: customFields, condition: condition });\n }\n }]);\n\n return SAlertContent;\n }(_react2.default.Component);\n\n SAlertContent.propTypes = {\n condition: _propTypes2.default.string.isRequired,\n message: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.node]),\n position: _propTypes2.default.string.isRequired,\n boxPosition: _propTypes2.default.string,\n id: _propTypes2.default.string.isRequired,\n effect: _propTypes2.default.string,\n beep: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object, _propTypes2.default.bool]),\n timeout: _propTypes2.default.oneOfType([_propTypes2.default.oneOf(['none']), _propTypes2.default.number]),\n html: _propTypes2.default.bool,\n onClose: _propTypes2.default.func,\n onShow: _propTypes2.default.func,\n customFields: _propTypes2.default.object,\n contentTemplate: _propTypes2.default.func\n };\n\n exports.default = SAlertContent;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-s-alert/dist/SAlertContent.js\n// module id = 16\n// module chunks = 0","module.exports = __WEBPACK_EXTERNAL_MODULE_17__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external {\"root\":\"ReactDOM\",\"commonjs2\":\"react-dom\",\"commonjs\":\"react-dom\",\"amd\":\"react-dom\"}\n// module id = 17\n// module chunks = 0","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['exports'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(exports);\n } else {\n var mod = {\n exports: {}\n };\n factory(mod.exports);\n global.sAlertTools = mod.exports;\n }\n})(this, function (exports) {\n 'use strict';\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n\n var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n\n var actualGlobalConfig = void 0;\n\n var sAlertTools = {\n randomId: function randomId() {\n return Math.random().toString(36).split('.')[1];\n },\n returnFirstDefined: function returnFirstDefined() {\n var value = void 0;\n var i = void 0;\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n for (i = 0; i < args.length; i++) {\n if (typeof args[i] !== 'undefined') {\n value = args[i];\n break;\n }\n }\n return value;\n },\n styleToObj: function styleToObj(input) {\n var result = {},\n i = void 0,\n entry = void 0,\n attributes = input && input.split(';').filter(Boolean);\n\n for (i = 0; i < attributes.length; i++) {\n entry = attributes[i].split(':');\n result[entry.splice(0, 1)[0].trim()] = entry.join(':').trim();\n }\n return result;\n },\n setGlobalConfig: function setGlobalConfig(config) {\n if ((typeof config === 'undefined' ? 'undefined' : _typeof(config)) === 'object') {\n actualGlobalConfig = config;\n }\n },\n getGlobalConfig: function getGlobalConfig() {\n return actualGlobalConfig;\n }\n };\n\n exports.default = sAlertTools;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-s-alert/dist/s-alert-parts/s-alert-tools.js\n// module id = 18\n// module chunks = 0","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['exports'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(exports);\n } else {\n var mod = {\n exports: {}\n };\n factory(mod.exports);\n global.sAlertStore = mod.exports;\n }\n})(this, function (exports) {\n 'use strict';\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n\n function _toConsumableArray(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n } else {\n return Array.from(arr);\n }\n }\n\n // custom simple store based on a awesome Redux library https://github.com/rackt/redux\n\n var createSAlertStore = function createSAlertStore(reducer) {\n var state = void 0;\n var listeners = [];\n var getState = function getState() {\n return state;\n };\n var dispatch = function dispatch(action) {\n state = reducer(state, action);\n listeners.forEach(function (listener) {\n return listener();\n });\n };\n var subscribe = function subscribe(listener) {\n listeners.push(listener);\n return function () {\n listeners = listeners.filter(function (l) {\n return l !== listener;\n });\n };\n };\n dispatch({});\n return {\n getState: getState, dispatch: dispatch, subscribe: subscribe\n };\n };\n\n var insert = function insert(state, action) {\n return [].concat(_toConsumableArray(state), [action.data]);\n };\n\n var remove = function remove(state, action) {\n var elemToRemoveArray = state.slice().filter(function (item) {\n return item.id === action.data.id;\n });\n if (Array.isArray(elemToRemoveArray)) {\n var elemToRemoveIndex = state.indexOf(elemToRemoveArray[0]);\n return [].concat(_toConsumableArray(state.slice(0, elemToRemoveIndex)), _toConsumableArray(state.slice(elemToRemoveIndex + 1)));\n }\n return state;\n };\n\n var alertsReducer = function alertsReducer() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var action = arguments[1];\n\n switch (action.type) {\n case 'INSERT':\n return insert(state, action);\n case 'REMOVE':\n return remove(state, action);\n case 'REMOVEALL':\n return [];\n default:\n return state;\n }\n };\n\n var sAlertStore = createSAlertStore(alertsReducer);\n\n exports.default = sAlertStore;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-s-alert/dist/s-alert-parts/s-alert-store.js\n// module id = 19\n// module chunks = 0","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['exports', 'react', 'prop-types'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(exports, require('react'), require('prop-types'));\n } else {\n var mod = {\n exports: {}\n };\n factory(mod.exports, global.react, global.propTypes);\n global.SAlertContentTmpl = mod.exports;\n }\n})(this, function (exports, _react, _propTypes) {\n 'use strict';\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n\n var _react2 = _interopRequireDefault(_react);\n\n var _propTypes2 = _interopRequireDefault(_propTypes);\n\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n }\n\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n\n var _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n }();\n\n function _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n }\n\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n }\n\n var SAlertContentTmpl = function (_React$Component) {\n _inherits(SAlertContentTmpl, _React$Component);\n\n function SAlertContentTmpl(props) {\n _classCallCheck(this, SAlertContentTmpl);\n\n return _possibleConstructorReturn(this, (SAlertContentTmpl.__proto__ || Object.getPrototypeOf(SAlertContentTmpl)).call(this, props));\n }\n\n _createClass(SAlertContentTmpl, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: this.props.classNames, id: this.props.id, style: this.props.styles },\n _react2.default.createElement(\n 'div',\n { className: 's-alert-box-inner' },\n this.props.message\n ),\n _react2.default.createElement('span', { className: 's-alert-close', onClick: this.props.handleClose })\n );\n }\n }]);\n\n return SAlertContentTmpl;\n }(_react2.default.Component);\n\n SAlertContentTmpl.propTypes = {\n id: _propTypes2.default.string.isRequired,\n classNames: _propTypes2.default.string.isRequired,\n condition: _propTypes2.default.string.isRequired,\n styles: _propTypes2.default.object.isRequired,\n message: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]).isRequired,\n handleClose: _propTypes2.default.func.isRequired,\n customFields: _propTypes2.default.object\n };\n\n exports.default = SAlertContentTmpl;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-s-alert/dist/SAlertContentTmpl.js\n// module id = 20\n// module chunks = 0","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['exports', 'react', 'react-dom', '../SAlertContent', './s-alert-store', './s-alert-tools'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(exports, require('react'), require('react-dom'), require('../SAlertContent'), require('./s-alert-store'), require('./s-alert-tools'));\n } else {\n var mod = {\n exports: {}\n };\n factory(mod.exports, global.react, global.reactDom, global.SAlertContent, global.sAlertStore, global.sAlertTools);\n global.sAlertDataPrep = mod.exports;\n }\n})(this, function (exports, _react, _reactDom, _SAlertContent, _sAlertStore, _sAlertTools) {\n 'use strict';\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n\n var _react2 = _interopRequireDefault(_react);\n\n var _reactDom2 = _interopRequireDefault(_reactDom);\n\n var _SAlertContent2 = _interopRequireDefault(_SAlertContent);\n\n var _sAlertStore2 = _interopRequireDefault(_sAlertStore);\n\n var _sAlertTools2 = _interopRequireDefault(_sAlertTools);\n\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n }\n\n var _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n var getAlertData = function getAlertData(sAlertPosition, parentComponent) {\n var positionTop = 0;\n var positionBottom = 0;\n var padding = 0;\n var alerts = {};\n var style = void 0;\n var docElement = void 0;\n var sAlertBoxHeight = void 0;\n var positionTypeTop = void 0;\n var positionTypeBottom = void 0;\n var checkFirst = function checkFirst(type, objId) {\n var collectionOfType = sAlertCollection.filter(function (obj) {\n return obj.position === type || sAlertGlobalConfig.position === type;\n });\n return collectionOfType && collectionOfType[0].id === objId;\n };\n var positionFunc = function positionFunc(position, positionType, alert, docElement, sAlertBoxHeight, reactComponent) {\n padding = aStack.spacing || parseInt(getComputedStyle(_reactDom2.default.findDOMNode(reactComponent))[positionType]);\n if (checkFirst(aPosition, alert.id) && aOffset) {\n position = 0;\n position = position + parseInt(aOffset);\n }\n if (checkFirst(aPosition, alert.id) && aStack.spacing) {\n position = position;\n } else {\n position = position + parseInt(padding);\n }\n style = positionType + ': ' + position + 'px;';\n position = position + sAlertBoxHeight;\n return position;\n };\n\n var sAlertGlobalConfig = _sAlertTools2.default.getGlobalConfig();\n var aStack = void 0;\n var aContentTemplate = void 0;\n var aOffset = void 0;\n var aMessage = void 0;\n var aHtml = void 0;\n var aCustomFields = void 0;\n var aPosition = void 0;\n var preserveContext = void 0;\n\n var query = {};\n if (sAlertPosition === 'left') {\n query = function query(item) {\n return item.position === 'top-left' || item.position === 'bottom-left' || !item.position && (sAlertGlobalConfig.position === 'top-left' || sAlertGlobalConfig.position === 'bottom-left');\n };\n }\n if (sAlertPosition === 'right') {\n query = function query(item) {\n return item.position === 'top-right' || item.position === 'bottom-right' || !item.position && (sAlertGlobalConfig.position === 'top-right' || sAlertGlobalConfig.position === 'bottom-right');\n };\n }\n if (sAlertPosition === 'full-top') {\n query = function query(item) {\n return item.position === 'top' || !item.position && sAlertGlobalConfig.position === 'top';\n };\n }\n if (sAlertPosition === 'full-bottom') {\n query = function query(item) {\n return item.position === 'bottom' || !item.position && sAlertGlobalConfig.position === 'bottom';\n };\n }\n\n var currentState = _sAlertStore2.default.getState();\n var sAlertCollection = currentState.slice().filter(query);\n\n return sAlertCollection.map(function (alert) {\n aStack = sAlertGlobalConfig.stack;\n aContentTemplate = sAlertGlobalConfig.contentTemplate;\n aOffset = _sAlertTools2.default.returnFirstDefined(alert.offset, sAlertGlobalConfig.offset);\n aMessage = _sAlertTools2.default.returnFirstDefined(alert.message, sAlertGlobalConfig.message);\n aHtml = _sAlertTools2.default.returnFirstDefined(alert.html, sAlertGlobalConfig.html);\n aCustomFields = _sAlertTools2.default.returnFirstDefined(alert.customFields, sAlertGlobalConfig.customFields);\n aPosition = _sAlertTools2.default.returnFirstDefined(alert.position, sAlertGlobalConfig.position);\n preserveContext = _sAlertTools2.default.returnFirstDefined(alert.preserveContext, sAlertGlobalConfig.preserveContext);\n positionTypeTop = aPosition && /top/g.test(aPosition);\n positionTypeBottom = aPosition && /bottom/g.test(aPosition);\n\n if (aStack) {\n // checking alert box height - needed to calculate position\n docElement = document.createElement('div');\n docElement.classList.add('s-alert-box-height');\n\n // mock element, needed for positions calculations\n var reactElement = _react2.default.createElement(_SAlertContent2.default, {\n key: _sAlertTools2.default.randomId(),\n id: _sAlertTools2.default.randomId(),\n condition: alert.condition,\n message: aMessage,\n position: aPosition,\n effect: alert.effect,\n boxPosition: alert.boxPosition,\n beep: false,\n timeout: 'none',\n html: aHtml,\n contentTemplate: aContentTemplate,\n customFields: aCustomFields\n });\n\n var reactComponent = void 0;\n\n if (preserveContext) {\n reactComponent = _reactDom2.default.unstable_renderSubtreeIntoContainer(parentComponent, reactElement, docElement);\n } else {\n reactComponent = _reactDom2.default.render(reactElement, docElement);\n }\n\n document.body.appendChild(docElement);\n sAlertBoxHeight = parseInt(getComputedStyle(_reactDom2.default.findDOMNode(reactComponent))['height']);\n if (positionTypeTop) {\n positionTop = positionFunc(positionTop, 'top', alert, docElement, sAlertBoxHeight, reactComponent);\n }\n if (positionTypeBottom) {\n positionBottom = positionFunc(positionBottom, 'bottom', alert, docElement, sAlertBoxHeight, reactComponent);\n }\n var sAlertComputedStyle = getComputedStyle(_reactDom2.default.findDOMNode(reactComponent));\n if (sAlertPosition === 'left') {\n style = style + 'left: ' + (aStack.spacing || parseInt(sAlertComputedStyle.left)) + 'px;';\n }\n if (sAlertPosition === 'right') {\n style = style + 'right: ' + (aStack.spacing || parseInt(sAlertComputedStyle.right)) + 'px;';\n }\n alerts = _extends({}, alert, { boxPosition: style });\n _reactDom2.default.unmountComponentAtNode(docElement);\n docElement.parentNode.removeChild(docElement);\n } else if (aOffset && positionTypeTop) {\n alerts = _extends({}, alert, { boxPosition: 'top: ' + parseInt(aOffset) + 'px;' });\n } else if (aOffset && positionTypeBottom) {\n alerts = _extends({}, alert, { boxPosition: 'bottom: ' + parseInt(aOffset) + 'px;' });\n } else {\n alerts = alert;\n }\n return alerts;\n });\n };\n\n exports.default = getAlertData;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-s-alert/dist/s-alert-parts/s-alert-data-prep.js\n// module id = 21\n// module chunks = 0","const CONST_VAR = {\n SORT_DESC: 'desc',\n SORT_ASC: 'asc',\n AWAIT_BEFORE_CELL_EDIT: 1,\n SIZE_PER_PAGE: 10,\n NEXT_PAGE: '>',\n NEXT_PAGE_TITLE: 'next page',\n LAST_PAGE: '>>',\n LAST_PAGE_TITLE: 'last page',\n PRE_PAGE: '<',\n PRE_PAGE_TITLE: 'previous page',\n FIRST_PAGE: '<<',\n FIRST_PAGE_TITLE: 'first page',\n PAGE_START_INDEX: 1,\n ROW_SELECT_BG_COLOR: '',\n ROW_SELECT_NONE: 'none',\n ROW_SELECT_SINGLE: 'radio',\n ROW_SELECT_MULTI: 'checkbox',\n CELL_EDIT_NONE: 'none',\n CELL_EDIT_CLICK: 'click',\n CELL_EDIT_DBCLICK: 'dbclick',\n SIZE_PER_PAGE_LIST: [ 10, 25, 30, 50 ],\n PAGINATION_SIZE: 5,\n PAGINATION_POS_TOP: 'top',\n PAGINATION_POS_BOTTOM: 'bottom',\n PAGINATION_POS_BOTH: 'both',\n TOOLBAR_POS_TOP: 'top',\n TOOLBAR_POS_BOTTOM: 'bottom',\n TOOLBAR_POS_BOTH: 'both',\n NO_DATA_TEXT: 'There is no data to display',\n SHOW_ONLY_SELECT: 'Show Selected Only',\n SHOW_ALL: 'Show All',\n EXPORT_CSV_TEXT: 'Export to CSV',\n INSERT_BTN_TEXT: 'New',\n DELETE_BTN_TEXT: 'Delete',\n SAVE_BTN_TEXT: 'Save',\n CLOSE_BTN_TEXT: 'Close',\n FILTER_DELAY: 500,\n SCROLL_TOP: 'Top',\n SCROLL_BOTTOM: 'Bottom',\n FILTER_TYPE: {\n TEXT: 'TextFilter',\n REGEX: 'RegexFilter',\n SELECT: 'SelectFilter',\n NUMBER: 'NumberFilter',\n DATE: 'DateFilter',\n CUSTOM: 'CustomFilter',\n ARRAY: 'ArrayFilter'\n },\n FILTER_COND_EQ: 'eq',\n FILTER_COND_LIKE: 'like',\n EXPAND_BY_ROW: 'row',\n EXPAND_BY_COL: 'column',\n REMOTE_SORT: 'sort',\n REMOTE_PAGE: 'pagination',\n REMOTE_CELL_EDIT: 'cellEdit',\n REMOTE_INSERT_ROW: 'insertRow',\n REMOTE_DROP_ROW: 'dropRow',\n REMOTE_FILTER: 'filter',\n REMOTE_SEARCH: 'search',\n REMOTE_EXPORT_CSV: 'exportCSV',\n INSERT_FAIL_INDICATOR: 'Validation errors, please check!',\n DEFAULT_CSV_SEPARATOR: ',',\n CSV_STRING_TYPE: 'string',\n CSV_NUMBER_TYPE: 'number',\n AUTO_COLLAPSE_WHEN_SORT: false,\n AUTO_COLLAPSE_WHEN_SEARCH: false,\n AUTO_COLLAPSE_WHEN_FILTER: false\n};\n\nCONST_VAR.REMOTE = {};\nCONST_VAR.REMOTE[CONST_VAR.REMOTE_SORT] = false;\nCONST_VAR.REMOTE[CONST_VAR.REMOTE_PAGE] = false;\nCONST_VAR.REMOTE[CONST_VAR.REMOTE_CELL_EDIT] = false;\nCONST_VAR.REMOTE[CONST_VAR.REMOTE_INSERT_ROW] = false;\nCONST_VAR.REMOTE[CONST_VAR.REMOTE_DROP_ROW] = false;\nCONST_VAR.REMOTE[CONST_VAR.REMOTE_FILTER] = false;\nCONST_VAR.REMOTE[CONST_VAR.REMOTE_SEARCH] = false;\nCONST_VAR.REMOTE[CONST_VAR.REMOTE_EXPORT_CSV] = false;\n\nexport default CONST_VAR;\n\n\n\n// WEBPACK FOOTER //\n// src/Const.js","/* eslint default-case: 0 */\n/* eslint guard-for-in: 0 */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport classSet from 'classnames';\nimport Const from './Const';\nimport Util from './util';\nimport DateFilter from './filters/Date';\nimport TextFilter from './filters/Text';\nimport RegexFilter from './filters/Regex';\nimport SelectFilter from './filters/Select';\nimport NumberFilter from './filters/Number';\n\nclass TableHeaderColumn extends Component {\n\n constructor(props) {\n super(props);\n this.handleFilter = this.handleFilter.bind(this);\n }\n\n /* eslint-disable */\n UNSAFE_componentWillReceiveProps(nextProps) {\n /* eslint-enable */\n if (nextProps.reset) {\n this.cleanFiltered();\n }\n\n // If column not displaying the same dataField, reset the filter accordingly\n if (nextProps.filter && nextProps.dataField !== this.props.dataField) {\n const emitter = nextProps.filter.emitter || {};\n const currentFilter = emitter.currentFilter || {};\n const filter = currentFilter[nextProps.dataField];\n const value = filter ? filter.value : '';\n\n const { ref } = this.getFilters(nextProps) || {};\n if (this.refs[ref]) {\n this.refs[ref].setState({ value });\n }\n }\n }\n\n handleColumnClick = () => {\n if (this.props.isOnlyHead || !this.props.dataSort) return;\n let { sort: order } = this.props;\n if (!order && this.props.defaultASC) order = Const.SORT_ASC;\n else order = this.props.sort === Const.SORT_DESC ? Const.SORT_ASC : Const.SORT_DESC;\n this.props.onSort(order, this.props.dataField);\n }\n\n handleFilter(value, type) {\n const { filter } = this.props;\n filter.emitter.handleFilter(this.props.dataField, value, type, filter);\n }\n\n getFilters(props = this.props) {\n const { headerText, children } = props;\n switch (props.filter.type) {\n case Const.FILTER_TYPE.TEXT: {\n return (\n this.textFilter = n } { ...props.filter }\n columnName={ headerText || children } filterHandler={ this.handleFilter } />\n );\n }\n case Const.FILTER_TYPE.REGEX: {\n return (\n this.regexFilter = n } { ...props.filter }\n columnName={ headerText || children } filterHandler={ this.handleFilter } />\n );\n }\n case Const.FILTER_TYPE.SELECT: {\n return (\n this.selectFilter = n } { ...props.filter }\n columnName={ headerText || children } filterHandler={ this.handleFilter } />\n );\n }\n case Const.FILTER_TYPE.NUMBER: {\n return (\n this.numberFilter = n } { ...props.filter }\n columnName={ headerText || children } filterHandler={ this.handleFilter } />\n );\n }\n case Const.FILTER_TYPE.DATE: {\n return (\n this.dateFilter = n } { ...props.filter }\n columnName={ headerText || children } filterHandler={ this.handleFilter } />\n );\n }\n case Const.FILTER_TYPE.CUSTOM: {\n const elm = props.filter.getElement(this.handleFilter,\n props.filter.customFilterParameters);\n\n return React.cloneElement(elm, { ref: n => this.customFilter = n });\n }\n }\n }\n\n componentDidMount() {\n this.headerCol.setAttribute('data-field', this.props.dataField);\n }\n\n renderDefaultCaret(dataSort, isBootstrap4) {\n if (!dataSort) return null;\n if (isBootstrap4) {\n return (\n \n );\n } else {\n return (\n \n \n \n \n \n \n \n \n );\n }\n }\n\n render() {\n let defaultCaret;\n let sortCaret;\n let sortClass;\n const {\n headerText,\n dataAlign,\n dataField,\n headerAlign,\n headerTitle,\n hidden,\n sort,\n dataSort,\n sortIndicator,\n children,\n caretRender,\n className,\n isOnlyHead,\n version,\n sortHeaderColumnClassName: customSortClass,\n thStyle: style\n } = this.props;\n const thStyle = {\n textAlign: headerAlign || dataAlign,\n display: hidden ? 'none' : null,\n ...style\n };\n const isBootstrap4 = Util.isBootstrap4(version);\n if (!isOnlyHead) {\n if (sortIndicator) {\n defaultCaret = this.renderDefaultCaret(dataSort, isBootstrap4);\n }\n sortCaret = sort ? Util.renderReactSortCaret(sort, isBootstrap4) : defaultCaret;\n if (caretRender) {\n sortCaret = caretRender(sort, dataField);\n }\n }\n\n if (sort) {\n sortClass = Util.isFunction(customSortClass) ?\n customSortClass(sort, dataField) : customSortClass;\n }\n const classes = classSet(\n Util.isFunction(className) ? className() : className,\n !isOnlyHead && dataSort ? 'sort-column' : '',\n sortClass);\n\n const attr = {};\n if (headerTitle) {\n if (typeof children === 'string' && !headerText) {\n attr.title = children;\n } else {\n attr.title = headerText;\n }\n }\n return (\n this.headerCol = node }\n className={ classes }\n style={ thStyle }\n onClick={ this.handleColumnClick }\n rowSpan={ this.props.rowSpan }\n colSpan={ this.props.colSpan }\n data-is-only-head={ this.props.isOnlyHead }\n { ...attr }>\n { children }{ sortCaret }\n e.stopPropagation() }>\n { this.props.filter && !isOnlyHead ? this.getFilters() : null }\n \n | \n );\n }\n\n cleanFiltered() {\n if (!this.props.filter) return;\n\n switch (this.props.filter.type) {\n case Const.FILTER_TYPE.TEXT: {\n this.textFilter.cleanFiltered();\n break;\n }\n case Const.FILTER_TYPE.REGEX: {\n this.regexFilter.cleanFiltered();\n break;\n }\n case Const.FILTER_TYPE.SELECT: {\n this.selectFilter.cleanFiltered();\n break;\n }\n case Const.FILTER_TYPE.NUMBER: {\n this.numberFilter.cleanFiltered();\n break;\n }\n case Const.FILTER_TYPE.DATE: {\n this.dateFilter.cleanFiltered();\n break;\n }\n case Const.FILTER_TYPE.CUSTOM: {\n this.customFilter.cleanFiltered();\n break;\n }\n }\n }\n\n applyFilter(val) {\n if (!this.props.filter) return;\n switch (this.props.filter.type) {\n case Const.FILTER_TYPE.TEXT: {\n this.textFilter.applyFilter(val);\n break;\n }\n case Const.FILTER_TYPE.REGEX: {\n this.regexFilter.applyFilter(val);\n break;\n }\n case Const.FILTER_TYPE.SELECT: {\n this.selectFilter.applyFilter(val);\n break;\n }\n case Const.FILTER_TYPE.NUMBER: {\n this.numberFilter.applyFilter(val);\n break;\n }\n case Const.FILTER_TYPE.DATE: {\n this.dateFilter.applyFilter(val);\n break;\n }\n }\n }\n}\n\nconst filterTypeArray = [];\nfor (const key in Const.FILTER_TYPE) {\n filterTypeArray.push(Const.FILTER_TYPE[key]);\n}\n\nTableHeaderColumn.propTypes = {\n dataField: PropTypes.string,\n dataAlign: PropTypes.string,\n headerAlign: PropTypes.string,\n headerTitle: PropTypes.bool,\n headerText: PropTypes.string,\n dataSort: PropTypes.bool,\n onSort: PropTypes.func,\n dataFormat: PropTypes.func,\n csvFormat: PropTypes.func,\n csvHeader: PropTypes.string,\n csvFieldType: PropTypes.oneOf([ Const.CSV_STRING_TYPE, Const.CSV_NUMBER_TYPE ]),\n isKey: PropTypes.bool,\n editable: PropTypes.any,\n hidden: PropTypes.bool,\n hiddenOnInsert: PropTypes.bool,\n searchable: PropTypes.bool,\n className: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func\n ]),\n width: PropTypes.string,\n sortFunc: PropTypes.func,\n sortFuncExtraData: PropTypes.any,\n sortHeaderColumnClassName: PropTypes.any,\n columnClassName: PropTypes.any,\n editColumnClassName: PropTypes.any,\n invalidEditColumnClassName: PropTypes.any,\n columnTitle: PropTypes.oneOfType([\n PropTypes.bool,\n PropTypes.func,\n PropTypes.string\n ]),\n filterFormatted: PropTypes.bool,\n filterValue: PropTypes.func,\n sort: PropTypes.string,\n caretRender: PropTypes.func,\n formatExtraData: PropTypes.any,\n csvFormatExtraData: PropTypes.any,\n filter: PropTypes.shape({\n type: PropTypes.oneOf(filterTypeArray),\n delay: PropTypes.number,\n options: PropTypes.oneOfType([\n PropTypes.object, // for SelectFilter\n PropTypes.arrayOf(PropTypes.number) // for NumberFilter\n ]),\n numberComparators: PropTypes.arrayOf(PropTypes.string),\n emitter: PropTypes.object,\n placeholder: PropTypes.string,\n getElement: PropTypes.func,\n customFilterParameters: PropTypes.object,\n condition: PropTypes.oneOf([ Const.FILTER_COND_EQ, Const.FILTER_COND_LIKE ])\n }),\n sortIndicator: PropTypes.bool,\n export: PropTypes.bool,\n expandable: PropTypes.bool,\n tdAttr: PropTypes.object,\n editTdAttr: PropTypes.object,\n tdStyle: PropTypes.oneOfType([ PropTypes.func, PropTypes.object ]),\n thStyle: PropTypes.object,\n keyValidator: PropTypes.bool,\n defaultASC: PropTypes.bool\n};\n\nTableHeaderColumn.defaultProps = {\n dataAlign: 'left',\n headerAlign: undefined,\n headerTitle: true,\n dataSort: false,\n dataFormat: undefined,\n csvFormat: undefined,\n csvHeader: undefined,\n csvFieldType: Const.CSV_STRING_TYPE,\n isKey: false,\n editable: true,\n onSort: undefined,\n hidden: false,\n hiddenOnInsert: false,\n searchable: true,\n className: '',\n columnTitle: false,\n width: null,\n sortFunc: undefined,\n columnClassName: '',\n editColumnClassName: '',\n invalidEditColumnClassName: '',\n filterFormatted: false,\n filterValue: undefined,\n sort: undefined,\n formatExtraData: undefined,\n sortFuncExtraData: undefined,\n filter: undefined,\n sortIndicator: true,\n expandable: true,\n tdAttr: undefined,\n editTdAttr: undefined,\n tdStyle: undefined,\n thStyle: undefined,\n keyValidator: false,\n defaultASC: false\n};\n\nexport default TableHeaderColumn;\n\n\n\n// WEBPACK FOOTER //\n// src/TableHeaderColumn.js","/* eslint react/display-name: 0 */\nimport React from 'react';\nimport Const from './Const';\nimport classSet from 'classnames';\n\nexport default {\n renderReactSortCaret(order, isBootstrap4) {\n let orderClass;\n if (isBootstrap4) {\n orderClass = classSet('fa', {\n 'fa-sort-asc': order === Const.SORT_ASC,\n 'fa-sort-desc': order === Const.SORT_DESC\n });\n return (\n \n );\n } else {\n orderClass = classSet('order', {\n 'dropup': order === Const.SORT_ASC\n });\n return (\n \n \n \n );\n }\n },\n\n isFunction(obj) {\n return obj && (typeof obj === 'function');\n },\n\n getScrollBarWidth() {\n const inner = document.createElement('p');\n inner.style.width = '100%';\n inner.style.height = '200px';\n\n const outer = document.createElement('div');\n outer.style.position = 'absolute';\n outer.style.top = '0px';\n outer.style.left = '0px';\n outer.style.visibility = 'hidden';\n outer.style.width = '200px';\n outer.style.height = '150px';\n outer.style.overflow = 'hidden';\n outer.appendChild(inner);\n\n document.body.appendChild(outer);\n const w1 = inner.getBoundingClientRect().width;\n outer.style.overflow = 'scroll';\n let w2 = inner.getBoundingClientRect().width;\n\n if (w1 === w2) w2 = outer.clientWidth;\n\n document.body.removeChild(outer);\n\n return (w1 - w2);\n },\n\n canUseDOM() {\n return typeof window !== 'undefined' && typeof window.document !== 'undefined';\n },\n\n // We calculate an offset here in order to properly fetch the indexed data,\n // despite the page start index not always being 1\n getNormalizedPage(pageStartIndex, page) {\n pageStartIndex = this.getFirstPage(pageStartIndex);\n if (page === undefined) page = pageStartIndex;\n const offset = Math.abs(Const.PAGE_START_INDEX - pageStartIndex);\n return page + offset;\n },\n\n getFirstPage(pageStartIndex) {\n return pageStartIndex !== undefined ? pageStartIndex : Const.PAGE_START_INDEX;\n },\n\n isBootstrap4(version) {\n return version === '4';\n },\n\n isSelectRowDefined(mode) {\n return mode === Const.ROW_SELECT_SINGLE || mode === Const.ROW_SELECT_MULTI;\n },\n\n renderColGroup(columns, selectRow, expandColumnOptions = {}, version) {\n let selectRowHeader = null;\n let expandRowHeader = null;\n const isBootstrap4 = this.isBootstrap4(version);\n const isSelectRowDefined = this.isSelectRowDefined(selectRow.mode);\n const columnWidth = isBootstrap4 ? '38px' : '30px';\n if (isSelectRowDefined) {\n const style = {\n width: selectRow.columnWidth || columnWidth,\n minWidth: selectRow.columnWidth || columnWidth\n };\n if (!selectRow.hideSelectColumn) {\n selectRowHeader = ();\n }\n }\n if (expandColumnOptions.expandColumnVisible) {\n const style = {\n width: expandColumnOptions.columnWidth || columnWidth,\n minWidth: expandColumnOptions.columnWidth || columnWidth\n };\n expandRowHeader = ();\n }\n const theader = columns.map(function(column, i) {\n const style = {\n display: column.hidden ? 'none' : null\n };\n if (column.width) {\n const width = !isNaN(column.width) ? column.width + 'px' : column.width;\n style.width = width;\n /** add min-wdth to fix user assign column width\n not eq offsetWidth in large column table **/\n style.minWidth = width;\n }\n return ();\n });\n\n return (\n \n { expandColumnOptions.expandColumnVisible &&\n expandColumnOptions.expandColumnBeforeSelectColumn &&\n expandRowHeader }\n { selectRowHeader }\n { expandColumnOptions.expandColumnVisible &&\n !expandColumnOptions.expandColumnBeforeSelectColumn &&\n expandRowHeader }\n { theader }\n \n );\n }\n};\n\n\n\n// WEBPACK FOOTER //\n// src/util.js","/* eslint quotes: 0 */\n/* eslint max-len: 0 */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Const from '../Const';\n\nconst legalComparators = [ '=', '>', '>=', '<', '<=', '!=' ];\n\nfunction dateParser(d) {\n return `${d.getFullYear()}-${(\"0\" + (d.getMonth() + 1)).slice(-2)}-${(\"0\" + d.getDate()).slice(-2)}`;\n}\n\nclass DateFilter extends Component {\n constructor(props) {\n super(props);\n this.dateComparators = this.props.dateComparators || legalComparators;\n this.filter = this.filter.bind(this);\n this.onChangeComparator = this.onChangeComparator.bind(this);\n }\n\n setDefaultDate() {\n let defaultDate = '';\n const { defaultValue } = this.props;\n if (defaultValue && defaultValue.date) {\n // Set the appropriate format for the input type=date, i.e. \"YYYY-MM-DD\"\n defaultDate = dateParser(new Date(defaultValue.date));\n }\n return defaultDate;\n }\n\n onChangeComparator(event) {\n let date = this.inputDate.value;\n const comparator = event.target.value;\n if (date === '') {\n return;\n }\n date = new Date(date);\n this.props.filterHandler({ date, comparator }, Const.FILTER_TYPE.DATE);\n }\n\n getComparatorOptions() {\n const optionTags = [];\n optionTags.push();\n for (let i = 0; i < this.dateComparators.length; i++) {\n optionTags.push(\n \n );\n }\n return optionTags;\n }\n\n filter(event) {\n const comparator = this.dateFilterComparator.value;\n const dateValue = event.target.value;\n if (dateValue) {\n this.props.filterHandler({ date: new Date(dateValue), comparator }, Const.FILTER_TYPE.DATE);\n } else {\n this.props.filterHandler(null, Const.FILTER_TYPE.DATE);\n }\n }\n\n cleanFiltered() {\n const value = this.setDefaultDate();\n const comparator = (this.props.defaultValue) ? this.props.defaultValue.comparator : '';\n this.setState(() => { return { isPlaceholderSelected: (value === '') }; });\n this.dateFilterComparator.value = comparator;\n this.inputDate.value = value;\n this.props.filterHandler({ date: new Date(value), comparator }, Const.FILTER_TYPE.DATE);\n }\n\n applyFilter(filterDateObj) {\n const { date, comparator } = filterDateObj;\n this.setState(() => { return { isPlaceholderSelected: (date === '') }; });\n this.dateFilterComparator.value = comparator;\n this.inputDate.value = dateParser(date);\n this.props.filterHandler({ date, comparator }, Const.FILTER_TYPE.DATE);\n }\n\n componentDidMount() {\n const comparator = this.dateFilterComparator.value;\n const dateValue = this.inputDate.value;\n if (comparator && dateValue) {\n this.props.filterHandler({ date: new Date(dateValue), comparator }, Const.FILTER_TYPE.DATE);\n }\n }\n\n render() {\n const { defaultValue, style: { date, comparator } } = this.props;\n return (\n \n \n this.inputDate = n }\n className='filter date-filter-input form-control'\n style={ date }\n type='date'\n onChange={ this.filter }\n defaultValue={ this.setDefaultDate() } />\n
\n );\n }\n}\n\nDateFilter.propTypes = {\n filterHandler: PropTypes.func.isRequired,\n defaultValue: PropTypes.shape({\n date: PropTypes.object,\n comparator: PropTypes.oneOf(legalComparators)\n }),\n style: PropTypes.shape({\n date: PropTypes.oneOfType([ PropTypes.object ]),\n comparator: PropTypes.oneOfType([ PropTypes.object ])\n }),\n /* eslint consistent-return: 0 */\n dateComparators: function(props, propName) {\n if (!props[propName]) {\n return;\n }\n for (let i = 0; i < props[propName].length; i++) {\n let comparatorIsValid = false;\n for (let j = 0; j < legalComparators.length; j++) {\n if (legalComparators[j] === props[propName][i]) {\n comparatorIsValid = true;\n break;\n }\n }\n if (!comparatorIsValid) {\n return new Error(`Date comparator provided is not supported.\n Use only ${legalComparators}`);\n }\n }\n },\n columnName: PropTypes.any\n};\n\nDateFilter.defaultProps = {\n style: {\n date: null,\n comparator: null\n }\n};\n\n\nexport default DateFilter;\n\n\n\n// WEBPACK FOOTER //\n// src/filters/Date.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Const from '../Const';\n\nclass TextFilter extends Component {\n constructor(props) {\n super(props);\n this.filter = this.filter.bind(this);\n this.timeout = null;\n this.state = {\n value: this.props.defaultValue || ''\n };\n }\n\n filter(event) {\n if (this.timeout) {\n clearTimeout(this.timeout);\n }\n const filterValue = event.target.value;\n this.setState(() => { return { value: filterValue }; });\n this.timeout = setTimeout(() => {\n this.props.filterHandler(filterValue, Const.FILTER_TYPE.TEXT);\n }, this.props.delay);\n }\n\n cleanFiltered() {\n const value = this.props.defaultValue ? this.props.defaultValue : '';\n this.setState(() => { return { value }; });\n this.props.filterHandler(value, Const.FILTER_TYPE.TEXT);\n }\n\n applyFilter(filterText) {\n this.setState(() => { return { value: filterText }; });\n this.props.filterHandler(filterText, Const.FILTER_TYPE.TEXT);\n }\n\n componentDidMount() {\n const defaultValue = this.inputText.value;\n if (defaultValue) {\n this.props.filterHandler(defaultValue, Const.FILTER_TYPE.TEXT);\n }\n }\n\n /* eslint-disable */\n UNSAFE_componentWillReceiveProps(nextProps) {\n /* eslint-enable */\n if (nextProps.defaultValue !== this.props.defaultValue) {\n this.applyFilter(nextProps.defaultValue || '');\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this.timeout);\n }\n\n render() {\n const { placeholder, columnName, style } = this.props;\n return (\n this.inputText = n }\n className='filter text-filter form-control'\n type='text'\n style={ style }\n onChange={ this.filter }\n placeholder={ placeholder || `Enter ${columnName}...` }\n value={ this.state.value } />\n );\n }\n}\n\nTextFilter.propTypes = {\n filterHandler: PropTypes.func.isRequired,\n defaultValue: PropTypes.string,\n delay: PropTypes.number,\n placeholder: PropTypes.string,\n columnName: PropTypes.any,\n style: PropTypes.oneOfType([ PropTypes.object ])\n};\n\nTextFilter.defaultProps = {\n delay: Const.FILTER_DELAY\n};\n\nexport default TextFilter;\n\n\n\n// WEBPACK FOOTER //\n// src/filters/Text.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Const from '../Const';\n\nclass RegexFilter extends Component {\n constructor(props) {\n super(props);\n this.filter = this.filter.bind(this);\n this.timeout = null;\n }\n\n filter(event) {\n if (this.timeout) {\n clearTimeout(this.timeout);\n }\n const filterValue = event.target.value;\n this.timeout = setTimeout(() => {\n this.props.filterHandler(filterValue, Const.FILTER_TYPE.REGEX);\n }, this.props.delay);\n }\n\n cleanFiltered() {\n const value = this.props.defaultValue ? this.props.defaultValue : '';\n this.inputText.value = value;\n this.props.filterHandler(value, Const.FILTER_TYPE.TEXT);\n }\n\n applyFilter(filterRegx) {\n this.inputText.value = filterRegx;\n this.props.filterHandler(filterRegx, Const.FILTER_TYPE.REGEX);\n }\n\n componentDidMount() {\n const value = this.inputText.value;\n if (value) {\n this.props.filterHandler(value, Const.FILTER_TYPE.REGEX);\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this.timeout);\n }\n\n render() {\n const { defaultValue, placeholder, columnName, style } = this.props;\n return (\n this.inputText = n }\n className='filter text-filter form-control'\n type='text'\n style={ style }\n onChange={ this.filter }\n placeholder={ placeholder || `Enter Regex for ${columnName}...` }\n defaultValue={ (defaultValue) ? defaultValue : '' } />\n );\n }\n}\n\nRegexFilter.propTypes = {\n filterHandler: PropTypes.func.isRequired,\n defaultValue: PropTypes.string,\n delay: PropTypes.number,\n placeholder: PropTypes.string,\n columnName: PropTypes.any,\n style: PropTypes.oneOfType([ PropTypes.object ])\n};\n\nRegexFilter.defaultProps = {\n delay: Const.FILTER_DELAY\n};\n\nexport default RegexFilter;\n\n\n\n// WEBPACK FOOTER //\n// src/filters/Regex.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport classSet from 'classnames';\nimport Const from '../Const';\n\nfunction optionsEquals(options1, options2) {\n const keys = Object.keys(options1);\n for (const k in keys) {\n if (options1[k] !== options2[k]) {\n return false;\n }\n }\n return Object.keys(options1).length === Object.keys(options2).length;\n}\n\nclass SelectFilter extends Component {\n constructor(props) {\n super(props);\n this.filter = this.filter.bind(this);\n this.state = {\n isPlaceholderSelected: (this.props.defaultValue === undefined ||\n !this.props.options.hasOwnProperty(this.props.defaultValue))\n };\n }\n\n /* eslint-disable */\n UNSAFE_componentWillReceiveProps() {\n /* eslint-enable */\n const currentSelectValue = this.selectInput.value;\n const isPlaceholderSelected = !currentSelectValue || currentSelectValue === '';\n this.setState(() => {\n return {\n isPlaceholderSelected\n };\n });\n }\n\n componentDidUpdate(prevProps) {\n let needFilter = false;\n if (this.props.defaultValue !== prevProps.defaultValue) {\n needFilter = true;\n } else if (!optionsEquals(this.props.options, prevProps.options)) {\n needFilter = true;\n }\n if (needFilter) {\n const value = this.selectInput.value;\n if (value) {\n this.props.filterHandler(value, Const.FILTER_TYPE.SELECT);\n }\n }\n }\n\n filter(event) {\n const { value } = event.target;\n this.setState(() => { return { isPlaceholderSelected: (value === '') }; });\n this.props.filterHandler(value, Const.FILTER_TYPE.SELECT);\n }\n\n cleanFiltered() {\n const value = (this.props.defaultValue !== undefined) ? this.props.defaultValue : '';\n this.setState(() => { return { isPlaceholderSelected: (value === '') }; });\n this.selectInput.value = value;\n this.props.filterHandler(value, Const.FILTER_TYPE.SELECT);\n }\n\n applyFilter(filterOption) {\n filterOption = filterOption + '';\n this.setState(() => { return { isPlaceholderSelected: (filterOption === '') }; });\n this.selectInput.value = filterOption;\n this.props.filterHandler(filterOption, Const.FILTER_TYPE.SELECT);\n }\n\n getOptions() {\n const optionTags = [];\n const { options, placeholder, columnName, selectText, withoutEmptyOption } = this.props;\n const selectTextValue = (selectText !== undefined) ? selectText : 'Select';\n if (!withoutEmptyOption) {\n optionTags.push((\n \n ));\n }\n Object.keys(options).map(key => {\n optionTags.push();\n });\n return optionTags;\n }\n\n componentDidMount() {\n const value = this.selectInput.value;\n if (value) {\n this.props.filterHandler(value, Const.FILTER_TYPE.SELECT);\n }\n }\n\n render() {\n const selectClass = classSet('filter', 'select-filter', 'form-control',\n { 'placeholder-selected': this.state.isPlaceholderSelected });\n\n return (\n \n );\n }\n}\n\nSelectFilter.propTypes = {\n filterHandler: PropTypes.func.isRequired,\n options: PropTypes.object.isRequired,\n placeholder: PropTypes.string,\n columnName: PropTypes.any,\n style: PropTypes.oneOfType([ PropTypes.object ])\n};\n\nexport default SelectFilter;\n\n\n\n// WEBPACK FOOTER //\n// src/filters/Select.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport classSet from 'classnames';\nimport Const from '../Const';\n\nconst legalComparators = [ '=', '>', '>=', '<', '<=', '!=' ];\n\nclass NumberFilter extends Component {\n constructor(props) {\n super(props);\n this.numberComparators = this.props.numberComparators || legalComparators;\n this.timeout = null;\n this.state = {\n isPlaceholderSelected: (this.props.defaultValue === undefined ||\n this.props.defaultValue.number === undefined ||\n (this.props.options &&\n this.props.options.indexOf(this.props.defaultValue.number) === -1))\n };\n this.onChangeNumber = this.onChangeNumber.bind(this);\n this.onChangeNumberSet = this.onChangeNumberSet.bind(this);\n this.onChangeComparator = this.onChangeComparator.bind(this);\n }\n\n onChangeNumber(event) {\n const comparator = this.numberFilterComparator.value;\n if (comparator === '') {\n return;\n }\n if (this.timeout) {\n clearTimeout(this.timeout);\n }\n const filterValue = event.target.value;\n this.timeout = setTimeout(() => {\n this.props.filterHandler({ number: filterValue, comparator }, Const.FILTER_TYPE.NUMBER);\n }, this.props.delay);\n }\n\n onChangeNumberSet(event) {\n const comparator = this.numberFilterComparator.value;\n const { value } = event.target;\n this.setState(() => { return { isPlaceholderSelected: (value === '') }; });\n if (comparator === '') {\n return;\n }\n this.props.filterHandler({ number: value, comparator }, Const.FILTER_TYPE.NUMBER);\n }\n\n onChangeComparator(event) {\n const value = this.numberFilter.value;\n const comparator = event.target.value;\n if (value === '') {\n return;\n }\n this.props.filterHandler({ number: value, comparator }, Const.FILTER_TYPE.NUMBER);\n }\n\n cleanFiltered() {\n const value = (this.props.defaultValue) ? this.props.defaultValue.number : '';\n const comparator = (this.props.defaultValue) ? this.props.defaultValue.comparator : '';\n this.setState(() => { return { isPlaceholderSelected: (value === '') }; });\n this.numberFilterComparator.value = comparator;\n this.numberFilter.value = value;\n this.props.filterHandler({ number: value, comparator }, Const.FILTER_TYPE.NUMBER);\n }\n\n applyFilter(filterObj) {\n const { number, comparator } = filterObj;\n this.setState(() => { return { isPlaceholderSelected: (number === '') }; });\n this.numberFilterComparator.value = comparator;\n this.numberFilter.value = number;\n this.props.filterHandler({ number, comparator }, Const.FILTER_TYPE.NUMBER);\n }\n\n getComparatorOptions() {\n const optionTags = [];\n const { withoutEmptyComparatorOption } = this.props;\n if (!withoutEmptyComparatorOption) {\n optionTags.push();\n }\n for (let i = 0; i < this.numberComparators.length; i++) {\n optionTags.push(\n \n );\n }\n return optionTags;\n }\n\n getNumberOptions() {\n const optionTags = [];\n const { options, withoutEmptyNumberOption } = this.props;\n if (!withoutEmptyNumberOption) {\n optionTags.push(\n \n );\n }\n for (let i = 0; i < options.length; i++) {\n optionTags.push();\n }\n return optionTags;\n }\n\n componentDidMount() {\n const comparator = this.numberFilterComparator.value;\n const number = this.numberFilter.value;\n if (comparator && number) {\n this.props.filterHandler({ number, comparator }, Const.FILTER_TYPE.NUMBER);\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this.timeout);\n }\n\n render() {\n const selectClass = classSet(\n 'select-filter', 'number-filter-input', 'form-control',\n { 'placeholder-selected': this.state.isPlaceholderSelected });\n\n return (\n \n \n {\n (this.props.options) ?\n :\n this.numberFilter = n }\n type='number'\n style={ this.props.style.number }\n className='number-filter-input form-control'\n placeholder={ this.props.placeholder || `Enter ${this.props.columnName}...` }\n onChange={ this.onChangeNumber }\n defaultValue={\n (this.props.defaultValue) ? this.props.defaultValue.number : ''\n } />\n }\n
\n );\n }\n}\n\nNumberFilter.propTypes = {\n filterHandler: PropTypes.func.isRequired,\n options: PropTypes.arrayOf(PropTypes.number),\n defaultValue: PropTypes.shape({\n number: PropTypes.number,\n comparator: PropTypes.oneOf(legalComparators)\n }),\n style: PropTypes.shape({\n number: PropTypes.oneOfType([ PropTypes.object ]),\n comparator: PropTypes.oneOfType([ PropTypes.object ])\n }),\n delay: PropTypes.number,\n /* eslint consistent-return: 0 */\n numberComparators: function(props, propName) {\n if (!props[propName]) {\n return;\n }\n for (let i = 0; i < props[propName].length; i++) {\n let comparatorIsValid = false;\n for (let j = 0; j < legalComparators.length; j++) {\n if (legalComparators[j] === props[propName][i]) {\n comparatorIsValid = true;\n break;\n }\n }\n if (!comparatorIsValid) {\n return new Error(`Number comparator provided is not supported.\n Use only ${legalComparators}`);\n }\n }\n },\n placeholder: PropTypes.string,\n columnName: PropTypes.any,\n withoutEmptyComparatorOption: PropTypes.bool,\n withoutEmptyNumberOption: PropTypes.bool\n};\n\nNumberFilter.defaultProps = {\n delay: Const.FILTER_DELAY,\n withoutEmptyComparatorOption: false,\n withoutEmptyNumberOption: false,\n style: {\n number: null,\n comparator: null\n }\n};\n\nexport default NumberFilter;\n\n\n\n// WEBPACK FOOTER //\n// src/filters/Number.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport ReactDOM from 'react-dom';\nimport Const from './Const';\nimport classSet from 'classnames';\nimport SelectRowHeaderColumn from './SelectRowHeaderColumn';\nimport ExpandRowHeaderColumn from './ExpandRowHeaderColumn';\nimport Utils from './util';\n\nclass Checkbox extends Component {\n componentDidMount() { this.update(this.props.checked); }\n /* eslint-disable */\n UNSAFE_componentWillReceiveProps(props) { this.update(props.checked); }\n /* eslint-enable */\n update(checked) {\n ReactDOM.findDOMNode(this).indeterminate = checked === 'indeterminate';\n }\n render() {\n return (\n \n );\n }\n}\n\nfunction getSortOrder(sortList, field, enableSort) {\n if (!enableSort) return undefined;\n const result = sortList.filter(sortObj => {\n return sortObj.sortField === field;\n });\n if (result.length > 0) {\n return result[0].order;\n } else {\n return undefined;\n }\n}\n\nclass TableHeader extends Component {\n\n render() {\n const { sortIndicator, sortList, onSort, reset, version, condensed, bordered,\n expandedColumnHeaderComponent, noAnyExpand, toggleExpandAllChilds, expandAll\n } = this.props;\n const containerClasses = classSet(\n 'react-bs-container-header',\n 'table-header-wrapper',\n this.props.headerContainerClass);\n const customTableClasses = {\n 'table-bordered': bordered\n };\n if (condensed) {\n if (Utils.isBootstrap4(version)) customTableClasses['table-sm'] = true;\n else customTableClasses['table-condensed'] = true;\n }\n const tableClasses = classSet(\n 'table', 'table-hover', customTableClasses, this.props.tableHeaderClass);\n\n const rowCount = Math.max(...React.Children.map(this.props.children, elm =>\n (elm && elm.props.row) ? Number(elm.props.row) : 0\n ));\n\n const rows = [];\n let rowKey = 0;\n\n rows[0] = [];\n rows[0].push( [\n this.props.expandColumnVisible &&\n this.props.expandColumnBeforeSelectColumn &&\n \n ], [\n this.renderSelectRowHeader(rowCount + 1, rowKey++)\n ], [\n this.props.expandColumnVisible &&\n !this.props.expandColumnBeforeSelectColumn &&\n \n ]);\n\n React.Children.forEach(this.props.children, (elm) => {\n if (elm === null || elm === undefined) {\n // Skip null or undefined elements.\n return;\n }\n const { dataField, dataSort } = elm.props;\n const sort = getSortOrder(sortList, dataField, dataSort);\n const rowIndex = elm.props.row ? Number(elm.props.row) : 0;\n const rowSpan = elm.props.rowSpan ? Number(elm.props.rowSpan) : 1;\n if (rows[rowIndex] === undefined) {\n rows[rowIndex] = [];\n }\n if ((rowSpan + rowIndex) === (rowCount + 1)) {\n rows[rowIndex].push(React.cloneElement(\n elm, { reset, key: rowKey++, onSort, sort, sortIndicator, isOnlyHead: false, version }\n ));\n } else {\n rows[rowIndex].push(React.cloneElement(\n elm, { key: rowKey++, isOnlyHead: true, version }\n ));\n }\n });\n\n const trs = rows.map((row, indexRow)=>{\n return (\n \n { row }\n
\n );\n });\n\n return (\n this.container = node }\n className={ containerClasses }\n style={ this.props.style }>\n
\n { React.cloneElement(this.props.colGroups, { ref: node => this.headerGrp = node }) }\n this.header = node }>\n { trs }\n \n
\n
\n );\n }\n\n getHeaderColGrouop = () => {\n return this.headerGrp.childNodes;\n }\n\n renderSelectRowHeader(rowCount, rowKey) {\n if (this.props.hideSelectColumn) {\n return null;\n } else if (this.props.customComponent) {\n const CustomComponent = this.props.customComponent;\n return (\n \n \n \n );\n } else if (this.props.rowSelectType === Const.ROW_SELECT_SINGLE) {\n return ();\n } else if (this.props.rowSelectType === Const.ROW_SELECT_MULTI) {\n return (\n \n \n \n );\n } else {\n return null;\n }\n }\n}\nTableHeader.propTypes = {\n headerContainerClass: PropTypes.string,\n tableHeaderClass: PropTypes.string,\n style: PropTypes.object,\n rowSelectType: PropTypes.string,\n onSort: PropTypes.func,\n onSelectAllRow: PropTypes.func,\n sortList: PropTypes.array,\n hideSelectColumn: PropTypes.bool,\n bordered: PropTypes.bool,\n condensed: PropTypes.bool,\n isFiltered: PropTypes.bool,\n isSelectAll: PropTypes.oneOf([ true, 'indeterminate', false ]),\n sortIndicator: PropTypes.bool,\n customComponent: PropTypes.func,\n colGroups: PropTypes.element,\n reset: PropTypes.bool,\n expandColumnVisible: PropTypes.bool,\n expandColumnComponent: PropTypes.func,\n expandedColumnHeaderComponent: PropTypes.func,\n expandColumnBeforeSelectColumn: PropTypes.bool,\n version: PropTypes.string,\n noAnyExpand: PropTypes.bool,\n expandAll: PropTypes.bool,\n toggleExpandAllChilds: PropTypes.func\n};\n\nexport default TableHeader;\n\n\n\n// WEBPACK FOOTER //\n// src/TableHeader.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nclass SelectRowHeaderColumn extends Component {\n\n render() {\n return (\n \n { this.props.children }\n | \n );\n }\n}\nSelectRowHeaderColumn.propTypes = {\n children: PropTypes.node,\n rowCount: PropTypes.number\n};\nexport default SelectRowHeaderColumn;\n\n\n\n// WEBPACK FOOTER //\n// src/SelectRowHeaderColumn.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nclass ExpandRowHeaderColumn extends Component {\n\n constructor(props) {\n super(props);\n this.toggleExpandAllChilds = this.toggleExpandAllChilds.bind(this);\n }\n\n toggleExpandAllChilds() {\n this.props.toggleExpandAllChilds();\n }\n\n render() {\n const {\n expandedColumnHeaderComponent,\n noAnyExpand,\n expandAll\n } = this.props;\n const expandedHeaderComponent = noAnyExpand ?\n :\n ;\n const ExpandedColumnHeaderComponent = expandedColumnHeaderComponent;\n\n return (\n \n {\n expandAll ? \n { expandedColumnHeaderComponent ?\n : expandedHeaderComponent }\n : null\n }\n | \n );\n }\n}\nExpandRowHeaderColumn.propTypes = {\n expandedColumnHeaderComponent: PropTypes.func,\n rowCount: PropTypes.number,\n noAnyExpand: PropTypes.bool,\n expandAll: PropTypes.bool,\n toggleExpandAllChilds: PropTypes.func\n};\nexport default ExpandRowHeaderColumn;\n\n\n\n// WEBPACK FOOTER //\n// src/ExpandRowHeaderColumn.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport classSet from 'classnames';\n\nclass TableFooter extends Component {\n\n render() {\n const { hideSelectColumn, expandColumnVisible } = this.props;\n const containerClasses = classSet('react-bs-container-footer', 'table-footer-wrapper');\n const tableClasses = classSet('table', 'table-hover', {\n 'table-bordered': this.props.bordered,\n 'table-condensed': this.props.condensed\n }, this.props.tableFooterClass);\n return (\n this.container = node }\n className={ containerClasses }\n style={ this.props.style } >\n {\n this.props.children.map((footerItem, footerItemIndex) => {\n return (\n
\n \n { React.cloneElement(this.props.colGroups) }\n \n this.footer = node }>\n { hideSelectColumn ? null : this.renderSelectionOrExpandCol() }\n { !expandColumnVisible ? null : this.renderSelectionOrExpandCol() }\n {\n this.props.columns.map((columnItem, colIndex) => {\n if ( !columnItem.hidden ) {\n const footerObj = footerItem.filter((item) => {\n return item.columnIndex === colIndex;\n });\n let footerData;\n let thAlignment = 'left';\n if (footerObj.length) {\n thAlignment = footerObj[0].align;\n if (footerObj[0].formatter) {\n footerData = footerObj[0].formatter(\n this.props.footerFormatterReturnData\n );\n } else {\n footerData = footerObj[0].label;\n }\n } else {\n footerData = '';\n }\n return (\n \n {\n footerData\n }\n | \n );\n }\n })\n }\n
\n \n
\n \n );\n })\n }\n
\n );\n }\n\n renderSelectionOrExpandCol() {\n return ( | );\n }\n}\nTableFooter.propTypes = {\n tableHeaderClass: PropTypes.string,\n style: PropTypes.object,\n hideSelectColumn: PropTypes.bool,\n expandColumnVisible: PropTypes.bool,\n bordered: PropTypes.bool,\n condensed: PropTypes.bool,\n isFiltered: PropTypes.bool,\n sortIndicator: PropTypes.bool\n};\n\nexport default TableFooter;\n\n\n\n// WEBPACK FOOTER //\n// src/TableFooter.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Utils from './util';\nimport Const from './Const';\nimport TableRow from './TableRow';\nimport TableColumn from './TableColumn';\nimport TableEditColumn from './TableEditColumn';\nimport classSet from 'classnames';\nimport ExpandComponent from './ExpandComponent';\n\nclass TableBody extends Component {\n constructor(props) {\n super(props);\n this.state = {\n currEditCell: null\n };\n }\n\n render() {\n const { cellEdit, beforeShowError, x, y, keyBoardNav, trStyle, version } = this.props;\n const customTableClasses = {\n 'table-striped': this.props.striped,\n 'table-bordered': this.props.bordered,\n 'table-hover': this.props.hover\n };\n if (this.props.condensed) {\n if (Utils.isBootstrap4(version)) customTableClasses['table-sm'] = true;\n else customTableClasses['table-condensed'] = true;\n }\n const tableClasses = classSet('table', customTableClasses, this.props.tableBodyClass);\n\n const noneditableRows = (cellEdit.nonEditableRows && cellEdit.nonEditableRows()) || [];\n const unselectable = this.props.selectRow.unselectable || [];\n const isSelectRowDefined = Utils.isSelectRowDefined(this.props.selectRow.mode);\n const tableHeader = Utils.renderColGroup(this.props.columns,\n this.props.selectRow, this.props.expandColumnOptions, version);\n const inputType = this.props.selectRow.mode === Const.ROW_SELECT_SINGLE ? 'radio' : 'checkbox';\n const CustomComponent = this.props.selectRow.customComponent;\n const enableKeyBoardNav = (keyBoardNav === true || typeof keyBoardNav === 'object');\n const customEditAndNavStyle = typeof keyBoardNav === 'object' ?\n keyBoardNav.customStyleOnEditCell :\n null;\n const customNavStyle = typeof keyBoardNav === 'object' ?\n keyBoardNav.customStyle :\n null;\n const ExpandColumnCustomComponent = this.props.expandColumnOptions.expandColumnComponent;\n let expandColSpan = this.props.columns.filter(col => col && !col.hidden).length;\n if (isSelectRowDefined && !this.props.selectRow.hideSelectColumn) {\n expandColSpan += 1;\n }\n let tabIndex = 1;\n if (this.props.expandColumnOptions.expandColumnVisible) {\n expandColSpan += 1;\n }\n\n let tableRows = this.props.data.map(function(data, r) {\n const tableColumns = this.props.columns.filter(_ => _ != null).map(function(column, i) {\n const fieldValue = data[column.name];\n const isFocusCell = r === y && i === x;\n if (column.name !== this.props.keyField && // Key field can't be edit\n column.editable && // column is editable? default is true, user can set it false\n column.editable.readOnly !== true &&\n this.state.currEditCell !== null &&\n this.state.currEditCell.rid === r &&\n this.state.currEditCell.cid === i &&\n noneditableRows.indexOf(data[this.props.keyField]) === -1) {\n let editable = column.editable;\n const format = column.format ? function(value) {\n return column.format(value, data, column.formatExtraData, r).replace(/<.*?>/g, '');\n } : false;\n if (Utils.isFunction(column.editable)) {\n editable = column.editable(fieldValue, data, r, i);\n }\n\n return (\n \n );\n } else {\n // add by bluespring for className customize\n let formattedValue;\n let columnChild = fieldValue && fieldValue.toString();\n let columnTitle = null;\n let tdClassName = column.className;\n let tdStyles = column.style;\n if (Utils.isFunction(column.className)) {\n tdClassName = column.className(fieldValue, data, r, i);\n }\n\n if (Utils.isFunction(column.style)) {\n tdStyles = column.style(fieldValue, data, r, i);\n }\n\n if (typeof column.format !== 'undefined') {\n formattedValue = column.format(fieldValue, data, column.formatExtraData, r);\n if (!React.isValidElement(formattedValue)) {\n columnChild = (\n \n );\n } else {\n columnChild = formattedValue;\n }\n }\n if (Utils.isFunction(column.columnTitle)) {\n columnTitle = column.columnTitle(fieldValue, data, r, i);\n } else if (typeof column.columnTitle === 'string') {\n columnTitle = column.columnTitle;\n } else if (column.columnTitle) {\n if (formattedValue) columnTitle = formattedValue.toString();\n else if (fieldValue) columnTitle = fieldValue.toString();\n }\n return (\n \n { columnChild }\n \n );\n }\n }, this);\n const key = data[this.props.keyField];\n const disable = unselectable.indexOf(key) !== -1;\n const selected = this.props.selectedRowKeys.indexOf(key) !== -1;\n const selectRowColumn = isSelectRowDefined && !this.props.selectRow.hideSelectColumn ?\n this.renderSelectRowColumn(selected, inputType, disable, CustomComponent, r, data) : null;\n const expandedRowColumn = this.renderExpandRowColumn(\n this.props.expandableRow && this.props.expandableRow(data),\n this.props.expanding.indexOf(key) > -1,\n ExpandColumnCustomComponent, r\n );\n const haveExpandContent = this.props.expandableRow && this.props.expandableRow(data);\n const isExpanding = haveExpandContent && this.props.expanding.indexOf(key) > -1;\n const { hideRowOnExpand } = this.props;\n // add by bluespring for className customize\n let trClassName = this.props.trClassName;\n if (Utils.isFunction(this.props.trClassName)) {\n trClassName = this.props.trClassName(data, r);\n }\n if (isExpanding && this.props.expandParentClass) {\n trClassName += Utils.isFunction(this.props.expandParentClass) ?\n ` ${this.props.expandParentClass(data, r)}` :\n ` ${this.props.expandParentClass}`;\n }\n const result = [ \n { this.props.expandColumnOptions.expandColumnVisible &&\n this.props.expandColumnOptions.expandColumnBeforeSelectColumn &&\n expandedRowColumn }\n { selectRowColumn }\n { this.props.expandColumnOptions.expandColumnVisible &&\n !this.props.expandColumnOptions.expandColumnBeforeSelectColumn &&\n expandedRowColumn }\n { tableColumns }\n ];\n\n if (haveExpandContent) {\n const expandBodyClass = Utils.isFunction(this.props.expandBodyClass) ?\n this.props.expandBodyClass(data, r, isExpanding) :\n this.props.expandBodyClass;\n result.push(\n \n { this.props.expandComponent(data) }\n \n );\n }\n return (result);\n }, this);\n\n if (tableRows.length === 0 && !this.props.withoutNoDataText) {\n const colSpan = this.props.columns.filter(c => !c.hidden).length\n + ((isSelectRowDefined && !this.props.selectRow.hideSelectColumn) ? 1 : 0)\n + (this.props.expandColumnOptions.expandColumnVisible ? 1 : 0);\n tableRows = [\n \n \n { this.props.noDataText || Const.NO_DATA_TEXT }\n | \n \n ];\n }\n\n return (\n this.container = node }\n className={ classSet('react-bs-container-body', this.props.bodyContainerClass) }\n style={ this.props.style }>\n
\n { React.cloneElement(tableHeader, { ref: node => this.header = node }) }\n this.tbody = node }>\n { tableRows }\n \n
\n
\n );\n }\n\n handleCellKeyDown = (e, lastEditCell) => {\n e.preventDefault();\n const { keyBoardNav, onNavigateCell, cellEdit, selectedRowKeys } = this.props;\n let offset;\n if (e.keyCode === 37) {\n offset = { x: -1, y: 0 };\n } else if (e.keyCode === 38) {\n offset = { x: 0, y: -1 };\n } else if (e.keyCode === 39 || e.keyCode === 9) {\n offset = { x: 1, y: 0 };\n if (e.keyCode === 9 && lastEditCell) {\n offset = {\n ...offset,\n lastEditCell\n };\n }\n } else if (e.keyCode === 40) {\n offset = { x: 0, y: 1 };\n } else if (e.keyCode === 13) {\n const rowIndex = e.target.parentElement.rowIndex + 1;\n const enterToEdit = typeof keyBoardNav === 'object' ?\n keyBoardNav.enterToEdit :\n false;\n const enterToExpand = typeof keyBoardNav === 'object' ?\n keyBoardNav.enterToExpand :\n false;\n const enterToSelect = typeof keyBoardNav === 'object' ?\n keyBoardNav.enterToSelect :\n false;\n\n if (cellEdit && enterToEdit) {\n this.handleEditCell(rowIndex, e.currentTarget.cellIndex, '', e);\n }\n\n if (enterToExpand) {\n this.handleClickCell(e, this.props.y + 1, this.props.x);\n }\n\n if (enterToSelect) {\n const isSelected = selectedRowKeys.indexOf(\n this.props.data[rowIndex - 1][this.props.keyField]) !== -1;\n this.handleSelectRow(rowIndex, !isSelected, e);\n }\n }\n if (offset && keyBoardNav) {\n onNavigateCell(offset);\n }\n }\n\n handleRowMouseOut = (rowIndex, event) => {\n const targetRow = this.props.data[rowIndex];\n this.props.onRowMouseOut(targetRow, event);\n }\n\n handleRowMouseOver = (rowIndex, event) => {\n const targetRow = this.props.data[rowIndex];\n this.props.onRowMouseOver(targetRow, event);\n }\n\n handleRowClick = (rowIndex, cellIndex, event) => {\n const { onRowClick, selectRow } = this.props;\n if (Utils.isSelectRowDefined(selectRow.mode)) cellIndex--;\n if (this._isExpandColumnVisible()) cellIndex--;\n onRowClick(this.props.data[rowIndex - 1], rowIndex - 1, cellIndex, event);\n }\n\n handleRowDoubleClick = (rowIndex, event) => {\n const { onRowDoubleClick } = this.props;\n const targetRow = this.props.data[rowIndex];\n onRowDoubleClick(targetRow, event);\n }\n\n handleSelectRow = (rowIndex, isSelected, e) => {\n let selectedRow;\n const { data, onSelectRow } = this.props;\n data.forEach((row, i) => {\n if (i === rowIndex - 1) {\n selectedRow = row;\n return false;\n }\n });\n onSelectRow(selectedRow, isSelected, e, rowIndex - 1);\n }\n\n handleSelectRowColumChange = (e, rowIndex) => {\n if (!this.props.selectRow.clickToSelect ||\n !this.props.selectRow.clickToSelectAndEditCell) {\n this.handleSelectRow(\n rowIndex + 1,\n e.currentTarget.checked,\n e);\n }\n }\n\n handleClickCell = (event, rowIndex, columnIndex = -1) => {\n const {\n columns,\n keyField,\n expandBy,\n expandableRow,\n selectRow: {\n mode,\n clickToExpand,\n hideSelectColumn\n },\n onlyOneExpanding\n } = this.props;\n const isSelectRowDefined = Utils.isSelectRowDefined(mode);\n const selectRowAndExpand = isSelectRowDefined && !clickToExpand ? false : true;\n columnIndex = isSelectRowDefined && !hideSelectColumn ? columnIndex - 1 : columnIndex;\n columnIndex = this._isExpandColumnVisible() ? columnIndex - 1 : columnIndex;\n if (expandableRow &&\n selectRowAndExpand &&\n (expandBy === Const.EXPAND_BY_ROW ||\n /* Below will allow expanding trigger by clicking on selection column\n if configure as expanding by column */\n (expandBy === Const.EXPAND_BY_COL && columnIndex < 0) ||\n (expandBy === Const.EXPAND_BY_COL && columns[columnIndex].expandable))) {\n let expanding = this.props.expanding;\n const rowKey = this.props.data[rowIndex - 1][keyField];\n const isRowExpanding = expanding.indexOf(rowKey) > -1;\n\n if (isRowExpanding) { // collapse\n expanding = expanding.filter(k => k !== rowKey);\n } else { // expand\n if (onlyOneExpanding) expanding = [ rowKey ];\n else expanding.push(rowKey);\n }\n this.props.onExpand(expanding, rowKey, isRowExpanding, event);\n }\n }\n\n handleEditCell = (rowIndex, columnIndex, action, e) => {\n const { selectRow } = this.props;\n const defineSelectRow = Utils.isSelectRowDefined(selectRow.mode);\n const expandColumnVisible = this._isExpandColumnVisible();\n if (defineSelectRow) {\n columnIndex--;\n if (selectRow.hideSelectColumn) columnIndex++;\n }\n if (expandColumnVisible) {\n columnIndex--;\n }\n rowIndex--;\n\n if (action === 'tab') {\n if (defineSelectRow && !selectRow.hideSelectColumn) columnIndex++;\n if (expandColumnVisible) columnIndex++;\n this.handleCompleteEditCell(e.target.value, rowIndex, columnIndex - 1);\n if (columnIndex >= this.props.columns.length) {\n this.handleCellKeyDown(e, true);\n } else {\n this.handleCellKeyDown(e);\n }\n const { nextRIndex, nextCIndex } = this.nextEditableCell(rowIndex, columnIndex);\n rowIndex = nextRIndex;\n columnIndex = nextCIndex;\n }\n\n const stateObj = {\n currEditCell: {\n rid: rowIndex,\n cid: columnIndex\n }\n };\n\n if (this.props.selectRow.clickToSelectAndEditCell &&\n this.props.cellEdit.mode !== Const.CELL_EDIT_DBCLICK) {\n const selected = this.props.selectedRowKeys.indexOf(\n this.props.data[rowIndex][this.props.keyField]) !== -1;\n this.handleSelectRow(rowIndex + 1, !selected, e);\n }\n this.setState(() => stateObj);\n }\n\n nextEditableCell = (rIndex, cIndex) => {\n const { keyField } = this.props;\n let nextRIndex = rIndex;\n let nextCIndex = cIndex;\n let row;\n let column;\n do {\n if (nextCIndex >= this.props.columns.length) {\n nextRIndex++;\n nextCIndex = 0;\n }\n row = this.props.data[nextRIndex];\n column = this.props.columns[nextCIndex];\n if (!row) break;\n let editable = column.editable;\n if (Utils.isFunction(column.editable)) {\n editable = column.editable(column, row, nextRIndex, nextCIndex);\n }\n if (editable && editable.readOnly !== true &&\n !column.hidden && keyField !== column.name) {\n break;\n } else {\n nextCIndex++;\n }\n } while (row);\n return { nextRIndex, nextCIndex };\n }\n\n handleCompleteEditCell = (newVal, rowIndex, columnIndex) => {\n if (newVal !== null) {\n const result = this.props.onEditCell(newVal, rowIndex, columnIndex);\n if (result !== Const.AWAIT_BEFORE_CELL_EDIT) {\n this.setState(() => { return { currEditCell: null }; });\n }\n } else {\n this.setState(() => { return { currEditCell: null }; });\n }\n }\n\n cancelEditCell = () => {\n this.setState(() => { return { currEditCell: null }; });\n }\n\n handleClickonSelectColumn = (e, isSelect, rowIndex, row) => {\n e.stopPropagation();\n if (e.target.tagName === 'TD' &&\n (this.props.selectRow.clickToSelect || this.props.selectRow.clickToSelectAndEditCell)) {\n const unselectable = this.props.selectRow.unselectable || [];\n if (unselectable.indexOf(row[this.props.keyField]) === -1) {\n this.handleSelectRow(rowIndex + 1, isSelect, e);\n this.handleClickCell(e, rowIndex + 1);\n }\n }\n }\n\n renderSelectRowColumn(selected, inputType, disabled,\n CustomComponent = null, rowIndex = null, row) {\n return (\n {\n this.handleClickonSelectColumn(e, !selected, rowIndex, row);\n } } style={ { textAlign: 'center' } }>\n { CustomComponent ?\n this.handleSelectRowColumChange(e, rowIndex) }/> :\n this.handleSelectRowColumChange(e, rowIndex) }/>\n }\n | \n );\n }\n\n renderExpandRowColumn(isExpandableRow, isExpanded, CustomComponent, rowIndex = null) {\n let content = null;\n if (CustomComponent) {\n content = ();\n } else if (isExpandableRow) {\n content = (isExpanded ? () :\n () );\n } else {\n content = ' ';\n }\n\n return (\n this.handleClickCell(e, rowIndex + 1) }>\n { content }\n | \n );\n }\n\n _isExpandColumnVisible() {\n return this.props.expandColumnOptions.expandColumnVisible;\n }\n\n getHeaderColGrouop = () => {\n return this.header.childNodes;\n }\n}\nTableBody.propTypes = {\n version: PropTypes.string,\n data: PropTypes.array,\n columns: PropTypes.array,\n striped: PropTypes.bool,\n bordered: PropTypes.bool,\n hover: PropTypes.bool,\n condensed: PropTypes.bool,\n keyField: PropTypes.string,\n selectedRowKeys: PropTypes.array,\n onRowClick: PropTypes.func,\n onRowDoubleClick: PropTypes.func,\n onSelectRow: PropTypes.func,\n noDataText: PropTypes.oneOfType([ PropTypes.string, PropTypes.object ]),\n withoutNoDataText: PropTypes.bool,\n style: PropTypes.object,\n tableBodyClass: PropTypes.string,\n bodyContainerClass: PropTypes.string,\n expandableRow: PropTypes.func,\n expandComponent: PropTypes.func,\n expandRowBgColor: PropTypes.string,\n expandBy: PropTypes.string,\n expanding: PropTypes.array,\n onExpand: PropTypes.func,\n expandBodyClass: PropTypes.oneOfType([ PropTypes.string, PropTypes.func ]),\n expandParentClass: PropTypes.oneOfType([ PropTypes.string, PropTypes.func ]),\n onlyOneExpanding: PropTypes.bool,\n beforeShowError: PropTypes.func,\n keyBoardNav: PropTypes.oneOfType([ PropTypes.bool, PropTypes.object ]),\n x: PropTypes.number,\n y: PropTypes.number,\n onNavigateCell: PropTypes.func,\n withoutTabIndex: PropTypes.bool,\n hideRowOnExpand: PropTypes.bool\n};\nexport default TableBody;\n\n\n\n// WEBPACK FOOTER //\n// src/TableBody.js","/* eslint no-nested-ternary: 0 */\nimport classSet from 'classnames';\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Utils from './util';\n\nclass TableRow extends Component {\n\n constructor(props) {\n super(props);\n this.clickNum = 0;\n }\n\n rowClick = e => {\n const rowIndex = this.props.index + 1;\n const cellIndex = e.target.cellIndex;\n if (this.props.onRowClick) this.props.onRowClick(rowIndex, cellIndex, e);\n const {\n selectRow, unselectableRow, isSelected, onSelectRow, onExpandRow, dbClickToEdit\n } = this.props;\n if (selectRow) {\n if (selectRow.clickToSelect && !unselectableRow) {\n onSelectRow(rowIndex, !isSelected, e);\n } else if (selectRow.clickToSelectAndEditCell && !unselectableRow) {\n this.clickNum++;\n /** if clickToSelectAndEditCell is enabled,\n * there should be a delay to prevent a selection changed when\n * user dblick to edit cell on same row but different cell\n **/\n setTimeout(() => {\n if (this.clickNum === 1) {\n onSelectRow(rowIndex, !isSelected, e);\n onExpandRow(e, rowIndex, cellIndex);\n }\n this.clickNum = 0;\n }, 200);\n } else {\n if (dbClickToEdit) {\n this.expandRow(e, rowIndex, cellIndex);\n }\n }\n }\n }\n\n expandRow = (event, rowIndex, cellIndex) => {\n this.clickNum++;\n setTimeout(() => {\n if (this.clickNum === 1) {\n this.props.onExpandRow(event, rowIndex, cellIndex);\n }\n this.clickNum = 0;\n }, 200);\n }\n\n rowDoubleClick = e => {\n if (e.target.tagName !== 'INPUT' &&\n e.target.tagName !== 'SELECT' &&\n e.target.tagName !== 'TEXTAREA') {\n if (this.props.onRowDoubleClick) {\n this.props.onRowDoubleClick(this.props.index, e);\n }\n }\n }\n\n rowMouseOut = e => {\n const rowIndex = this.props.index;\n if (this.props.onRowMouseOut) {\n this.props.onRowMouseOut(rowIndex, e);\n }\n }\n\n rowMouseOver = e => {\n const rowIndex = this.props.index;\n if (this.props.onRowMouseOver) {\n this.props.onRowMouseOver(rowIndex, e);\n }\n }\n\n render() {\n this.clickNum = 0;\n const { selectRow, row, isSelected, className, index, hidden } = this.props;\n let { style } = this.props;\n let backgroundColor = null;\n let selectRowClass = null;\n\n if (selectRow) {\n backgroundColor = Utils.isFunction(selectRow.bgColor) ?\n selectRow.bgColor(row, isSelected) : ( isSelected ? selectRow.bgColor : null);\n\n selectRowClass = Utils.isFunction(selectRow.className) ?\n selectRow.className(row, isSelected) : ( isSelected ? selectRow.className : null);\n }\n\n if (Utils.isFunction(style)) {\n style = style(row, index);\n } else {\n style = { ...style } || {};\n }\n // the bgcolor of row selection always overwrite the bgcolor defined by global.\n if (style && backgroundColor && isSelected) {\n style.backgroundColor = backgroundColor;\n }\n const trCss = {\n style: { ...style },\n className: classSet(selectRowClass, className)\n };\n\n return (\n { this.props.children }
\n );\n }\n}\nTableRow.propTypes = {\n index: PropTypes.number,\n row: PropTypes.any,\n style: PropTypes.any,\n isSelected: PropTypes.bool,\n enableCellEdit: PropTypes.bool,\n onRowClick: PropTypes.func,\n onRowDoubleClick: PropTypes.func,\n onSelectRow: PropTypes.func,\n onExpandRow: PropTypes.func,\n onRowMouseOut: PropTypes.func,\n onRowMouseOver: PropTypes.func,\n unselectableRow: PropTypes.bool,\n hidden: PropTypes.bool\n};\nTableRow.defaultProps = {\n onRowClick: undefined,\n onRowDoubleClick: undefined,\n hidden: false\n};\nexport default TableRow;\n\n\n\n// WEBPACK FOOTER //\n// src/TableRow.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport ReactDOM from 'react-dom';\nimport Const from './Const';\nimport Util from './util';\n\nclass TableColumn extends Component {\n\n constructor(props) {\n super(props);\n }\n /* eslint no-unused-vars: [0, { \"args\": \"after-used\" }] */\n shouldComponentUpdate(nextProps, nextState) {\n const { children } = this.props;\n let shouldUpdated = this.props.width !== nextProps.width\n || this.props.className !== nextProps.className\n || this.props.hidden !== nextProps.hidden\n || this.props.dataAlign !== nextProps.dataAlign\n || this.props.isFocus !== nextProps.isFocus\n || typeof children !== typeof nextProps.children\n || ('' + this.props.onEdit).toString() !== ('' + nextProps.onEdit).toString();\n\n if (shouldUpdated) {\n return shouldUpdated;\n }\n\n if (typeof children === 'object' && children !== null && children.props !== null) {\n if (children.props.type === 'checkbox' || children.props.type === 'radio') {\n shouldUpdated = shouldUpdated ||\n children.props.type !== nextProps.children.props.type ||\n children.props.checked !== nextProps.children.props.checked ||\n children.props.disabled !== nextProps.children.props.disabled;\n } else {\n shouldUpdated = true;\n }\n } else {\n shouldUpdated = shouldUpdated || children !== nextProps.children;\n }\n\n if (shouldUpdated) {\n return shouldUpdated;\n }\n\n if (!(this.props.cellEdit && nextProps.cellEdit)) {\n return false;\n } else {\n return shouldUpdated\n || this.props.cellEdit.mode !== nextProps.cellEdit.mode;\n }\n }\n\n componentDidMount() {\n const dom = ReactDOM.findDOMNode(this);\n if (this.props.isFocus && this.props.keyBoardNav) {\n dom.focus();\n } else {\n dom.blur();\n }\n }\n\n componentDidUpdate() {\n const dom = ReactDOM.findDOMNode(this);\n if (this.props.isFocus && this.props.keyBoardNav) {\n dom.focus();\n } else {\n dom.blur();\n }\n }\n\n handleCellEdit = e => {\n try {\n if (this.props.cellEdit.mode === Const.CELL_EDIT_DBCLICK) {\n if (document.selection && document.selection.empty) {\n document.selection.empty();\n } else if (window.getSelection) {\n const sel = window.getSelection();\n sel.removeAllRanges();\n }\n }\n } catch (err) {} /* eslint no-empty: 0 */\n this.props.onEdit(\n this.props.rIndex + 1, e.currentTarget.cellIndex, e);\n if (this.props.cellEdit.mode !== Const.CELL_EDIT_DBCLICK) {\n this.props.onClick(e, this.props.rIndex + 1, e.currentTarget.cellIndex);\n }\n }\n\n handleCellClick = e => {\n const { onClick, rIndex } = this.props;\n if (onClick) {\n onClick(e, rIndex + 1, e.currentTarget.cellIndex);\n }\n }\n\n handleKeyDown = e => {\n if (this.props.keyBoardNav) {\n this.props.onKeyDown(e);\n }\n }\n\n render() {\n const {\n children,\n columnTitle,\n dataAlign,\n hidden,\n cellEdit,\n attrs,\n style,\n isFocus,\n keyBoardNav,\n tabIndex,\n customNavStyle,\n withoutTabIndex,\n row\n } = this.props;\n\n let { className } = this.props;\n\n let tdStyle = {\n textAlign: dataAlign,\n display: hidden ? 'none' : null,\n ...style\n };\n\n const opts = {};\n\n if (cellEdit) {\n if (cellEdit.mode === Const.CELL_EDIT_CLICK) {\n opts.onClick = this.handleCellEdit;\n } else if (cellEdit.mode === Const.CELL_EDIT_DBCLICK) {\n opts.onDoubleClick = this.handleCellEdit;\n } else {\n opts.onClick = this.handleCellClick;\n }\n }\n\n if (keyBoardNav && isFocus) {\n opts.onKeyDown = this.handleKeyDown;\n }\n\n if (isFocus) {\n if (customNavStyle) {\n const cusmtStyle = Util.isFunction(customNavStyle) ?\n customNavStyle(children, row) : customNavStyle;\n tdStyle = {\n ...tdStyle,\n ...cusmtStyle\n };\n } else {\n className = `${className} default-focus-cell`;\n }\n }\n\n const attr = {};\n if (!withoutTabIndex) attr.tabIndex = tabIndex;\n return (\n \n { typeof children === 'boolean' ? children.toString() : children }\n | \n );\n }\n}\nTableColumn.propTypes = {\n rIndex: PropTypes.number,\n dataAlign: PropTypes.string,\n hidden: PropTypes.bool,\n className: PropTypes.string,\n columnTitle: PropTypes.string,\n children: PropTypes.node,\n onClick: PropTypes.func,\n attrs: PropTypes.object,\n style: PropTypes.object,\n isFocus: PropTypes.bool,\n onKeyDown: PropTypes.func,\n tabIndex: PropTypes.string,\n withoutTabIndex: PropTypes.bool,\n keyBoardNav: PropTypes.oneOfType([ PropTypes.bool, PropTypes.object ]),\n customNavStyle: PropTypes.oneOfType([ PropTypes.func, PropTypes.object ]),\n row: PropTypes.any /* only used on custom styling for navigation */\n};\n\nTableColumn.defaultProps = {\n dataAlign: 'left',\n withoutTabIndex: false,\n hidden: false,\n className: '',\n isFocus: false,\n keyBoardNav: false\n};\nexport default TableColumn;\n\n\n\n// WEBPACK FOOTER //\n// src/TableColumn.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport ReactDOM from 'react-dom';\nimport editor from './Editor';\nimport { notice } from './Notification.js';\nimport classSet from 'classnames';\nimport Util from './util';\n\nclass TableEditColumn extends Component {\n constructor(props) {\n super(props);\n this.timeouteClear = 0;\n const { fieldValue, row, className } = this.props;\n this.focusInEditor = this.focusInEditor.bind(this);\n this.state = {\n shakeEditor: false,\n className: Util.isFunction(className) ? className(fieldValue, row) : className\n };\n }\n\n valueShortCircuit(value) {\n return value === null || typeof value === 'undefined' ? '' : value;\n }\n\n handleKeyPress = e => {\n if (e.keyCode === 13 || e.keyCode === 9) {\n // Pressed ENTER or TAB\n const value = e.currentTarget.type === 'checkbox' ?\n this._getCheckBoxValue(e) : e.currentTarget.value;\n\n if ((e.keyCode === 9 && this.props.blurToSave) ||\n (!this.validator(value))) {\n return;\n }\n\n if (e.keyCode === 13) {\n this.props.completeEdit(value, this.props.rowIndex, this.props.colIndex);\n } else {\n this.props.onTab(this.props.rowIndex + 1, this.props.colIndex + 1, 'tab', e);\n e.preventDefault();\n }\n } else if (e.keyCode === 27) {\n this.props.completeEdit(\n null, this.props.rowIndex, this.props.colIndex);\n } else if (e.type === 'click' && !this.props.blurToSave) { // textarea click save button\n const value = e.target.parentElement.firstChild.value;\n if (!this.validator(value)) {\n return;\n }\n this.props.completeEdit(\n value, this.props.rowIndex, this.props.colIndex);\n }\n }\n\n handleBlur = e => {\n e.stopPropagation();\n if (this.props.blurToSave) {\n const value = e.currentTarget.type === 'checkbox' ?\n this._getCheckBoxValue(e) : e.currentTarget.value;\n if (!this.validator(value)) {\n return false;\n }\n this.props.completeEdit(\n value, this.props.rowIndex, this.props.colIndex);\n } else if (this.props.blurToEscape) {\n this.props.completeEdit(null, this.props.rowIndex, this.props.colIndex);\n }\n }\n\n handleCustomUpdate = value => {\n if (!this.validator(value)) {\n return;\n }\n this.props.completeEdit(value, this.props.rowIndex, this.props.colIndex);\n }\n\n // modified by iuculanop\n // BEGIN\n validator(value) {\n const ts = this;\n let valid = true;\n if (ts.props.editable.validator) {\n const checkVal = ts.props.editable.validator(value, this.props.row);\n const responseType = typeof checkVal;\n if (responseType !== 'object' && checkVal !== true) {\n valid = false;\n this.notifyToastr('error', checkVal, '');\n } else if (responseType === 'object' && checkVal.isValid !== true) {\n valid = false;\n this.notifyToastr(checkVal.notification.type,\n checkVal.notification.msg,\n checkVal.notification.title);\n }\n if (!valid) {\n // animate input\n ts.clearTimeout();\n const { invalidColumnClassName, row } = this.props;\n const className = Util.isFunction(invalidColumnClassName) ?\n invalidColumnClassName(value, row) :\n invalidColumnClassName;\n ts.setState({ shakeEditor: true, className });\n ts.timeouteClear = setTimeout(() => {\n ts.setState({ shakeEditor: false });\n }, 300);\n this.focusInEditor();\n return valid;\n }\n }\n return valid;\n }\n // END\n\n notifyToastr = (type, message, title) => {\n let toastr = true;\n const { beforeShowError } = this.props;\n if (beforeShowError) {\n toastr = beforeShowError(type, message, title);\n }\n if (toastr) {\n notice(type, message, title);\n }\n }\n\n clearTimeout() {\n if (this.timeouteClear !== 0) {\n clearTimeout(this.timeouteClear);\n this.timeouteClear = 0;\n }\n }\n\n componentDidMount() {\n this.focusInEditor();\n const dom = ReactDOM.findDOMNode(this);\n if (this.props.isFocus) {\n dom.focus();\n } else {\n dom.blur();\n }\n }\n\n componentDidUpdate() {\n const dom = ReactDOM.findDOMNode(this);\n if (this.props.isFocus) {\n dom.focus();\n } else {\n dom.blur();\n }\n }\n\n componentWillUnmount() {\n this.clearTimeout();\n }\n\n focusInEditor() {\n if (this.inputRef && Util.isFunction(this.inputRef.focus)) {\n this.inputRef.focus();\n }\n }\n\n handleClick = e => {\n if (e.target.tagName !== 'TD') {\n e.stopPropagation();\n }\n }\n\n getInputRef = userRef => ref => {\n this.inputRef = ref;\n if (Util.isFunction(userRef)) {\n userRef(ref);\n } else if (typeof userRef === 'string') {\n throw new Error('Ref must be a function');\n }\n }\n\n getHandleKeyPress = customHandler => e => {\n this.handleKeyPress(e);\n if (Util.isFunction(customHandler)) {\n customHandler(e);\n }\n }\n\n getHandleBlur = customHandler => e => {\n this.handleBlur(e);\n if (Util.isFunction(customHandler)) {\n customHandler(e);\n }\n }\n\n render() {\n const {\n editable,\n format,\n customEditor,\n isFocus,\n customStyleWithNav,\n row,\n attrs\n } = this.props;\n const { shakeEditor } = this.state;\n const attr = {\n ...editable.attrs,\n ref: this.getInputRef(editable.attrs && editable.attrs.ref),\n onKeyDown: this.getHandleKeyPress(editable.attrs && editable.attrs.onKeyDown),\n onBlur: this.getHandleBlur(editable.attrs && editable.attrs.onBlur)\n };\n let style = { position: 'relative' };\n let { fieldValue } = this.props;\n let { className } = this.state;\n\n if (editable.placeholder) {\n attr.placeholder = editable.placeholder;\n /* eslint-disable no-console */\n console.warn(\n 'Setting editable.placeholder is deprecated. Use editable.attrs to set input attributes');\n /* eslint-enable no-console */\n }\n\n const editorClass = classSet({ 'animated': shakeEditor, 'shake': shakeEditor });\n fieldValue = fieldValue === 0 ? '0' : fieldValue;\n let cellEditor;\n if (customEditor) {\n const customEditorProps = {\n row,\n ...attr,\n defaultValue: this.valueShortCircuit(fieldValue),\n ...customEditor.customEditorParameters\n };\n cellEditor = customEditor.getElement(this.handleCustomUpdate, customEditorProps);\n } else {\n cellEditor = editor(editable, attr, format, editorClass, this.valueShortCircuit(fieldValue),\n null, row);\n }\n\n if (isFocus) {\n if (customStyleWithNav) {\n const customStyle = Util.isFunction(customStyleWithNav) ?\n customStyleWithNav(fieldValue, row) : customStyleWithNav;\n style = {\n ...style,\n ...customStyle\n };\n } else {\n className = `${className} default-focus-cell`;\n }\n }\n\n return (\n \n { cellEditor }\n | \n );\n }\n\n _getCheckBoxValue(e) {\n let value = '';\n const values = e.currentTarget.value.split(':');\n value = e.currentTarget.checked ? values[0] : values[1];\n return value;\n }\n}\n\nTableEditColumn.propTypes = {\n completeEdit: PropTypes.func,\n rowIndex: PropTypes.number,\n colIndex: PropTypes.number,\n blurToSave: PropTypes.bool,\n blurToEscape: PropTypes.bool,\n editable: PropTypes.oneOfType([ PropTypes.bool, PropTypes.object ]),\n format: PropTypes.oneOfType([ PropTypes.bool, PropTypes.func ]),\n row: PropTypes.any,\n fieldValue: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.number,\n PropTypes.array,\n PropTypes.object\n ]),\n className: PropTypes.any,\n beforeShowError: PropTypes.func,\n isFocus: PropTypes.bool,\n attrs: PropTypes.object,\n customStyleWithNav: PropTypes.oneOfType([ PropTypes.func, PropTypes.object ])\n};\n\n\nexport default TableEditColumn;\n\n\n\n// WEBPACK FOOTER //\n// src/TableEditColumn.js","import Utils from './util';\nimport React from 'react';\n\nconst editor = function(editable, attr, format, editorClass, defaultValue, ignoreEditable, row) {\n if (editable === true ||\n (editable === false && ignoreEditable) ||\n typeof editable === 'string') { // simple declare\n const type = editable ? 'text' : editable;\n return (\n \n );\n } else if (!editable) {\n const type = editable ? 'text' : editable;\n return (\n \n );\n } else if (editable && (editable.type === undefined ||\n editable.type === null ||\n editable.type.trim() === '')) {\n const type = editable ? 'text' : editable;\n return (\n \n );\n } else if (editable.type) {// standard declare\n // put style if exist\n editable.style && (attr.style = editable.style);\n // put class if exist\n attr.className = (editorClass || '') +\n ' form-control editor edit-' +\n editable.type +\n (editable.className ? (' ' + editable.className) : '');\n\n if (editable.type === 'select') {// process select input\n let options = [];\n let { values } = editable.options;\n const { textKey, valueKey } = editable.options;\n if (Utils.isFunction(values)) {\n values = values(row);\n }\n if (Array.isArray(values)) {// only can use arrray data for options\n let text;\n let value;\n options = values.map((option, i) => {\n if (typeof option === 'object') {\n text = textKey ? option[textKey] : option.text;\n value = valueKey ? option[valueKey] : option.value;\n } else {\n text = format ? format(option) : option;\n value = option;\n }\n return (\n \n );\n }\n );\n }\n return (\n \n );\n } else if (editable.type === 'textarea') {// process textarea input\n // put other if exist\n editable.cols && (attr.cols = editable.cols);\n editable.rows && (attr.rows = editable.rows);\n let saveBtn;\n const keyUpHandler = attr.onKeyDown;\n if (keyUpHandler) {\n attr.onKeyDown = function(e) {\n if (e.keyCode !== 13) { // not Pressed ENTER\n keyUpHandler(e);\n }\n };\n saveBtn = (\n \n );\n }\n return (\n \n \n { saveBtn }\n
\n );\n } else if (editable.type === 'checkbox') {\n let values = 'true:false';\n if (editable.options && editable.options.values) {\n // values = editable.options.values.split(':');\n values = editable.options.values;\n }\n attr.className = attr.className.replace('form-control', '');\n attr.className += ' checkbox pull-right';\n\n const checked = defaultValue &&\n defaultValue.toString() === values.split(':')[0] ? true : false;\n\n return (\n \n );\n } else if (editable.type === 'datetime') {\n return (\n \n );\n } else {// process other input type. as password,url,email...\n return (\n \n );\n }\n }\n // default return for other case of editable\n return (\n \n );\n};\n\nexport default editor;\n\n\n\n// WEBPACK FOOTER //\n// src/Editor.js","import Alert from 'react-s-alert';\n\nconst notice = (type, msg, title) => {\n const titleHTML = title ? `${ title }
` : '';\n\n const bodyHTML = `\n ${ titleHTML }\n \n \n ${ msg }\n
\n `;\n\n Alert.error(bodyHTML, {\n position: 'top-right',\n timeout: 3000,\n html: true,\n effect: 'scale'\n });\n};\n\nexport { notice };\n\n\n\n// WEBPACK FOOTER //\n// src/Notification.js","/* eslint max-len: 0 */\n/* eslint no-nested-ternary: 0 */\nimport React, { Component } from 'react';\nimport classSet from 'classnames';\n\nclass ExpandComponent extends Component {\n\n render() {\n const { className } = this.props;\n const trCss = {\n style: {\n backgroundColor: this.props.bgColor\n },\n className: classSet(className)\n };\n return (\n \n \n { this.props.children }\n | \n
\n );\n }\n}\n\nexport default ExpandComponent;\n\n\n\n// WEBPACK FOOTER //\n// src/ExpandComponent.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport classSet from 'classnames';\nimport PageButton from './PageButton.js';\nimport SizePerPageDropDown from './SizePerPageDropDown';\nimport Const from '../Const';\nimport Util from '../util';\n\nclass PaginationList extends Component {\n\n constructor(props) {\n super(props);\n this.state = {\n open: this.props.open\n };\n }\n\n /* eslint-disable */\n UNSAFE_componentWillReceiveProps() {\n /* eslint-enable */\n const { keepSizePerPageState } = this.props;\n if (!keepSizePerPageState) {\n this.closeDropDown();\n }\n }\n\n changePage = page => {\n const {\n pageStartIndex,\n prePage,\n currPage,\n nextPage,\n lastPage,\n firstPage,\n sizePerPage,\n keepSizePerPageState\n } = this.props;\n\n if (page === prePage) {\n page = (currPage - 1) < pageStartIndex ? pageStartIndex : currPage - 1;\n } else if (page === nextPage) {\n page = (currPage + 1) > this.lastPage ? this.lastPage : currPage + 1;\n } else if (page === lastPage) {\n page = this.lastPage;\n } else if (page === firstPage) {\n page = pageStartIndex;\n } else {\n page = parseInt(page, 10);\n }\n\n if (keepSizePerPageState) { this.closeDropDown(); }\n\n if (page !== currPage) {\n this.props.changePage(page, sizePerPage);\n }\n }\n\n changeSizePerPage = pageNum => {\n const selectSize = typeof pageNum === 'string' ? parseInt(pageNum, 10) : pageNum;\n let { currPage } = this.props;\n if (selectSize !== this.props.sizePerPage) {\n this.totalPages = Math.ceil(this.props.dataSize / selectSize);\n this.lastPage = this.props.pageStartIndex + this.totalPages - 1;\n if (currPage > this.lastPage) currPage = this.lastPage;\n this.props.changePage(currPage, selectSize);\n if (this.props.onSizePerPageList) {\n this.props.onSizePerPageList(selectSize);\n }\n }\n\n this.closeDropDown();\n }\n\n toggleDropDown = () => {\n this.setState(() => {\n return {\n open: !this.state.open\n };\n });\n }\n\n closeDropDown = () => {\n this.setState(() => {\n return {\n open: false\n };\n });\n }\n\n render() {\n const {\n currPage,\n dataSize,\n sizePerPage,\n sizePerPageList,\n paginationShowsTotal,\n pageStartIndex,\n paginationPanel,\n hidePageListOnlyOnePage\n } = this.props;\n this.totalPages = Math.ceil(dataSize / sizePerPage);\n this.lastPage = this.props.pageStartIndex + this.totalPages - 1;\n const pageBtns = this.makePage(Util.isFunction(paginationPanel));\n const dropdown = this.makeDropDown();\n\n const offset = Math.abs(Const.PAGE_START_INDEX - pageStartIndex);\n let start = ((currPage - pageStartIndex) * sizePerPage);\n start = dataSize === 0 ? 0 : start + 1;\n let to = Math.min((sizePerPage * (currPage + offset) - 1), dataSize);\n if (to >= dataSize) to--;\n let total = paginationShowsTotal ? \n Showing rows { start } to { to + 1 } of { dataSize }\n : null;\n\n if (Util.isFunction(paginationShowsTotal)) {\n total = paginationShowsTotal(start, to + 1, dataSize);\n }\n\n const content = paginationPanel && paginationPanel({\n currPage,\n sizePerPage,\n sizePerPageList,\n pageStartIndex,\n totalPages: this.totalPages,\n changePage: this.changePage,\n toggleDropDown: this.toggleDropDown,\n changeSizePerPage: this.changeSizePerPage,\n components: {\n totalText: total,\n sizePerPageDropdown: dropdown,\n pageList: pageBtns\n }\n });\n\n const hidePageList = hidePageListOnlyOnePage && this.totalPages === 1 ? 'none' : 'block';\n return (\n \n {\n content ||\n [ (\n
\n { total }{ sizePerPageList.length > 1 ? dropdown : null }\n
\n ), (\n
\n { pageBtns }\n
\n ) ]\n }\n
\n );\n }\n\n makeDropDown() {\n let dropdown;\n let dropdownProps;\n let sizePerPageText = '';\n const {\n sizePerPageDropDown,\n hideSizePerPage,\n sizePerPage,\n sizePerPageList\n } = this.props;\n if (sizePerPageDropDown) {\n dropdown = sizePerPageDropDown({\n open: this.state.open,\n hideSizePerPage,\n currSizePerPage: String(sizePerPage),\n sizePerPageList,\n toggleDropDown: this.toggleDropDown,\n changeSizePerPage: this.changeSizePerPage,\n onBlur: this.closeDropDown\n });\n if (dropdown.type.name === SizePerPageDropDown.name) {\n dropdownProps = dropdown.props;\n } else {\n return dropdown;\n }\n }\n\n if (dropdownProps || !dropdown) {\n const isBootstrap4 = Util.isBootstrap4(this.props.version);\n const sizePerPageOptions = sizePerPageList.map((_sizePerPage) => {\n const pageText = _sizePerPage.text || _sizePerPage;\n const pageNum = _sizePerPage.value || _sizePerPage;\n if (sizePerPage === pageNum) sizePerPageText = pageText;\n if (isBootstrap4) {\n return (\n {\n e.preventDefault();\n this.changeSizePerPage(pageNum);\n } }>{ pageText }\n );\n } else {\n return (\n \n {\n e.preventDefault();\n this.changeSizePerPage(pageNum);\n } }>{ pageText }\n \n );\n }\n });\n dropdown = (\n \n );\n }\n return dropdown;\n }\n\n makePage(isCustomPagingPanel = false) {\n const pages = this.getPages();\n const isStart = (page, { currPage, pageStartIndex, firstPage, prePage }) =>\n (currPage === pageStartIndex && (page === firstPage || page === prePage));\n const isEnd = (page, { currPage, nextPage, lastPage }) =>\n (currPage === this.lastPage && (page === nextPage || page === lastPage ));\n const pageBtns = pages\n .filter(function(page) {\n if (this.props.alwaysShowAllBtns) {\n return true;\n }\n return (isStart(page, this.props) || isEnd(page, this.props)) ?\n false :\n true;\n }, this)\n .map(function(page, index) {\n const isActive = page === this.props.currPage;\n const isDisabled = (isStart(page, this.props) || isEnd(page, this.props)) ?\n true :\n false;\n let title = page + '';\n let pageNumber = page;\n\n if (page === this.props.nextPage) {\n title = this.props.nextPageTitle;\n pageNumber = this.props.currPage + 1;\n } else if (page === this.props.prePage) {\n title = this.props.prePageTitle;\n pageNumber = this.props.currPage - 1;\n } else if (page === this.props.firstPage) {\n title = this.props.firstPageTitle;\n pageNumber = this.props.pageStartIndex;\n } else if (page === this.props.lastPage) {\n title = this.props.lastPageTitle;\n pageNumber = this.getLastPage();\n }\n\n return (\n \n { page }\n \n );\n }, this);\n const classname = classSet(\n isCustomPagingPanel ? null : 'react-bootstrap-table-page-btns-ul',\n 'pagination'\n );\n return (\n \n );\n }\n\n getLastPage() {\n return this.lastPage;\n }\n\n getPages() {\n let pages;\n let endPage = this.totalPages;\n if (endPage <= 0) return [];\n let startPage = Math.max(\n this.props.currPage - Math.floor(this.props.paginationSize / 2),\n this.props.pageStartIndex\n );\n endPage = startPage + this.props.paginationSize - 1;\n\n if (endPage > this.lastPage) {\n endPage = this.lastPage;\n startPage = endPage - this.props.paginationSize + 1;\n }\n\n if (startPage !== this.props.pageStartIndex\n && this.totalPages > this.props.paginationSize\n && this.props.withFirstAndLast) {\n pages = [ this.props.firstPage, this.props.prePage ];\n } else if (this.totalPages > 1 || this.props.alwaysShowAllBtns) {\n pages = [ this.props.prePage ];\n } else {\n pages = [];\n }\n\n for (let i = startPage; i <= endPage; i++) {\n if (i >= this.props.pageStartIndex) pages.push(i);\n }\n\n if (endPage <= this.lastPage && pages.length > 1) {\n pages.push(this.props.nextPage);\n }\n if (endPage !== this.lastPage && this.props.withFirstAndLast) {\n pages.push(this.props.lastPage);\n }\n\n return pages;\n }\n}\nPaginationList.propTypes = {\n currPage: PropTypes.number,\n sizePerPage: PropTypes.number,\n dataSize: PropTypes.number,\n changePage: PropTypes.func,\n sizePerPageList: PropTypes.array,\n paginationShowsTotal: PropTypes.oneOfType([ PropTypes.bool, PropTypes.func ]),\n paginationSize: PropTypes.number,\n onSizePerPageList: PropTypes.func,\n prePage: PropTypes.any,\n nextPage: PropTypes.any,\n firstPage: PropTypes.any,\n lastPage: PropTypes.any,\n pageStartIndex: PropTypes.number,\n hideSizePerPage: PropTypes.bool,\n alwaysShowAllBtns: PropTypes.bool,\n withFirstAndLast: PropTypes.bool,\n sizePerPageDropDown: PropTypes.func,\n paginationPanel: PropTypes.func,\n prePageTitle: PropTypes.string,\n nextPageTitle: PropTypes.string,\n firstPageTitle: PropTypes.string,\n lastPageTitle: PropTypes.string,\n hidePageListOnlyOnePage: PropTypes.bool,\n keepSizePerPageState: PropTypes.bool\n};\n\nPaginationList.defaultProps = {\n sizePerPage: Const.SIZE_PER_PAGE,\n pageStartIndex: Const.PAGE_START_INDEX\n};\n\nexport default PaginationList;\n\n\n\n// WEBPACK FOOTER //\n// src/pagination/PaginationList.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport classSet from 'classnames';\n\nclass PageButton extends Component {\n\n constructor(props) {\n super(props);\n }\n\n pageBtnClick = e => {\n e.preventDefault();\n this.props.changePage(this.props.pageNumber);\n }\n\n render() {\n const classes = classSet({\n 'active': this.props.active,\n 'disabled': this.props.disable,\n 'hidden': this.props.hidden,\n 'page-item': true\n });\n return (\n \n { this.props.children }\n \n );\n }\n}\nPageButton.propTypes = {\n title: PropTypes.string,\n changePage: PropTypes.func,\n active: PropTypes.bool,\n disable: PropTypes.bool,\n hidden: PropTypes.bool,\n children: PropTypes.node,\n pageNumber: PropTypes.number\n};\n\nexport default PageButton;\n\n\n\n// WEBPACK FOOTER //\n// src/pagination/PageButton.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nconst sizePerPageDefaultClass = 'react-bs-table-sizePerPage-dropdown';\n\nclass SizePerPageDropDown extends Component {\n render() {\n const {\n open,\n hidden,\n onClick,\n onBlur,\n options,\n className,\n variation,\n btnContextual,\n isBootstrap4,\n currSizePerPage\n } = this.props;\n\n if (hidden) return null;\n\n const openClass = open ? 'open show' : '';\n\n const renderOptions = () => {\n const attrs = {\n className: `dropdown-menu ${openClass}`,\n role: 'menu',\n 'aria-labelledby': 'pageDropDown'\n };\n const type = isBootstrap4 ? 'div' : 'ul';\n\n return React.createElement(type, attrs, options);\n };\n\n return (\n \n \n { renderOptions() }\n \n );\n }\n}\n\nSizePerPageDropDown.propTypes = {\n open: PropTypes.bool,\n hidden: PropTypes.bool,\n btnContextual: PropTypes.string,\n currSizePerPage: PropTypes.string,\n options: PropTypes.array,\n variation: PropTypes.oneOf([ 'dropdown', 'dropup' ]),\n className: PropTypes.string,\n onClick: PropTypes.func,\n onBlur: PropTypes.func\n};\nSizePerPageDropDown.defaultProps = {\n open: false,\n hidden: false,\n btnContextual: 'btn-default btn-secondary',\n variation: 'dropdown',\n className: ''\n};\n\n\nexport default SizePerPageDropDown;\n\n\n\n// WEBPACK FOOTER //\n// src/pagination/SizePerPageDropDown.js","/* eslint no-console: 0 */\n\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Modal from 'react-modal';\n// import classSet from 'classnames';\nimport Const from '../Const';\n// import editor from '../Editor';\nimport { notice } from '../Notification.js';\nimport InsertModal from './InsertModal';\nimport InsertButton from './InsertButton';\nimport DeleteButton from './DeleteButton';\nimport ExportCSVButton from './ExportCSVButton';\nimport ShowSelectedOnlyButton from './ShowSelectedOnlyButton';\nimport SearchField from './SearchField';\nimport ClearSearchButton from './ClearSearchButton';\n\nclass ToolBar extends Component {\n\n static modalSeq = 0;\n\n constructor(props) {\n super(props);\n this.timeouteClear = 0;\n this.modalClassName;\n this.state = {\n isInsertModalOpen: false,\n validateState: null,\n shakeEditor: false,\n showSelected: false\n };\n }\n\n /* eslint-disable */\n UNSAFE_componentWillMount() {\n /* eslint-enable */\n const delay = this.props.searchDelayTime ? this.props.searchDelayTime : 0;\n this.debounceCallback = this.handleDebounce(() => {\n this.seachInput && this.props.onSearch(this.seachInput.getValue());\n },\n delay\n );\n }\n\n /* eslint-disable */\n UNSAFE_componentWillReceiveProps(nextProps) {\n /* eslint-enable */\n if (nextProps.reset) {\n this.setSearchInput('');\n }\n }\n\n componentWillUnmount() {\n this.clearTimeout();\n }\n\n setSearchInput(text) {\n if (this.seachInput && this.seachInput.value !== text) {\n this.seachInput.value = text;\n }\n }\n\n clearTimeout() {\n if (this.timeouteClear) {\n clearTimeout(this.timeouteClear);\n this.timeouteClear = 0;\n }\n }\n\n displayCommonMessage = () => {\n notice('error', this.props.insertFailIndicator, '');\n }\n\n validateNewRow(newRow) {\n const validateState = {};\n let isValid = true;\n let tempMsg;\n let responseType;\n\n this.props.columns.forEach(column => {\n if (column.isKey && column.keyValidator) { // key validator for checking exist key\n tempMsg = this.props.isValidKey(newRow[column.field]);\n if (tempMsg) {\n this.displayCommonMessage();\n isValid = false;\n validateState[column.field] = tempMsg;\n }\n } else if (column.editable && column.editable.validator) { // process validate\n tempMsg = column.editable.validator(newRow[column.field], newRow);\n responseType = typeof tempMsg;\n if (responseType !== 'object' && tempMsg !== true) {\n this.displayCommonMessage();\n isValid = false;\n validateState[column.field] = tempMsg;\n } else if (responseType === 'object' && tempMsg.isValid !== true) {\n notice(\n tempMsg.notification.type,\n tempMsg.notification.msg,\n tempMsg.notification.title);\n isValid = false;\n validateState[column.field] = tempMsg.notification.msg;\n }\n }\n });\n\n if (isValid) {\n return true;\n } else {\n this.clearTimeout();\n // show error in form and shake it\n this.setState(() => { return { validateState, shakeEditor: true }; });\n this.timeouteClear = setTimeout(() => {\n this.setState(() => { return { shakeEditor: false }; });\n }, 300);\n return null;\n }\n }\n\n handleSaveBtnClick = (newRow) => {\n if (!this.validateNewRow(newRow)) { // validation fail\n return;\n }\n const msg = this.props.onAddRow(newRow);\n if (msg !== false) {\n this.afterHandleSaveBtnClick(msg);\n }\n }\n\n afterHandleSaveBtnClick = (msg) => {\n if (msg) {\n notice('error', msg, '');\n this.clearTimeout();\n // shake form and hack prevent modal hide\n this.setState(() => {\n return {\n shakeEditor: true,\n validateState: 'this is hack for prevent bootstrap modal hide'\n };\n });\n // clear animate class\n this.timeouteClear = setTimeout(() => {\n this.setState(() => { return { shakeEditor: false }; });\n }, 300);\n } else {\n // reset state and hide modal hide\n this.setState(() => {\n return {\n validateState: null,\n shakeEditor: false,\n isInsertModalOpen: false\n };\n });\n }\n }\n\n handleModalClose = () => {\n this.setState(() => { return { isInsertModalOpen: false }; });\n }\n\n handleModalOpen = () => {\n this.setState(() => { return { isInsertModalOpen: true }; });\n }\n\n handleShowOnlyToggle = () => {\n this.setState(() => {\n return {\n showSelected: !this.state.showSelected\n };\n });\n this.props.onShowOnlySelected();\n }\n\n handleDropRowBtnClick = () => {\n this.props.onDropRow();\n }\n\n handleDebounce = (func, wait, immediate) => {\n let timeout;\n\n return () => {\n const later = () => {\n timeout = null;\n\n if (!immediate) {\n func.apply(this, arguments);\n }\n };\n\n const callNow = immediate && !timeout;\n\n clearTimeout(timeout);\n\n timeout = setTimeout(later, wait || 0);\n\n if (callNow) {\n func.appy(this, arguments);\n }\n };\n }\n\n handleKeyUp = (event) => {\n event.persist();\n this.debounceCallback(event);\n }\n\n handleExportCSV = () => {\n this.props.onExportCSV();\n }\n\n handleClearBtnClick = () => {\n this.seachInput && this.seachInput.setValue('');\n this.props.onSearch('');\n }\n\n render() {\n this.modalClassName = 'bs-table-modal-sm' + ToolBar.modalSeq++;\n let toolbar = null;\n let btnGroup = null;\n let insertBtn = null;\n let deleteBtn = null;\n let exportCSVBtn = null;\n let showSelectedOnlyBtn = null;\n\n if (this.props.enableInsert) {\n if (this.props.insertBtn) {\n insertBtn = this.renderCustomBtn(this.props.insertBtn,\n [ this.handleModalOpen ], InsertButton.name, 'onClick', this.handleModalOpen);\n } else {\n insertBtn = (\n \n );\n }\n }\n\n if (this.props.enableDelete) {\n if (this.props.deleteBtn) {\n deleteBtn = this.renderCustomBtn(this.props.deleteBtn,\n [ this.handleDropRowBtnClick ], DeleteButton.name, 'onClick', this.handleDropRowBtnClick);\n } else {\n deleteBtn = (\n \n );\n }\n }\n\n if (this.props.enableShowOnlySelected) {\n if (this.props.showSelectedOnlyBtn) {\n showSelectedOnlyBtn = this.renderCustomBtn(this.props.showSelectedOnlyBtn,\n [ this.handleShowOnlyToggle, this.state.showSelected ], ShowSelectedOnlyButton.name,\n 'onClick', this.handleShowOnlyToggle);\n } else {\n showSelectedOnlyBtn = (\n \n );\n }\n }\n\n if (this.props.enableExportCSV) {\n if (this.props.exportCSVBtn) {\n exportCSVBtn = this.renderCustomBtn(this.props.exportCSVBtn,\n [ this.handleExportCSV ], ExportCSVButton.name, 'onClick', this.handleExportCSV);\n } else {\n exportCSVBtn = (\n \n );\n }\n }\n\n if (this.props.btnGroup) {\n btnGroup = this.props.btnGroup({\n exportCSVBtn,\n insertBtn,\n deleteBtn,\n showSelectedOnlyBtn\n });\n } else {\n btnGroup = (\n \n { exportCSVBtn }\n { insertBtn }\n { deleteBtn }\n { showSelectedOnlyBtn }\n
\n );\n }\n\n const [ searchPanel, searchField, clearBtn ] = this.renderSearchPanel();\n const modal = this.props.enableInsert ? this.renderInsertRowModal() : null;\n\n if (this.props.toolBar) {\n toolbar = this.props.toolBar({\n components: {\n exportCSVBtn,\n insertBtn,\n deleteBtn,\n showSelectedOnlyBtn,\n searchPanel,\n btnGroup,\n searchField,\n clearBtn\n },\n event: {\n openInsertModal: this.handleModalOpen,\n closeInsertModal: this.handleModalClose,\n dropRow: this.handleDropRowBtnClick,\n showOnlyToogle: this.handleShowOnlyToggle,\n exportCSV: this.handleExportCSV,\n search: this.props.onSearch\n }\n });\n } else {\n toolbar = [ (\n \n { this.props.searchPosition === 'left' ? searchPanel : btnGroup }\n
\n ), (\n \n { this.props.searchPosition === 'left' ? btnGroup : searchPanel }\n
\n ) ];\n }\n\n return (\n \n { toolbar }\n { modal }\n
\n );\n }\n\n renderSearchPanel() {\n if (this.props.enableSearch) {\n let classNames = 'form-group form-group-sm react-bs-table-search-form';\n let clearBtn = null;\n let searchField = null;\n let searchPanel = null;\n if (this.props.clearSearch) {\n if (this.props.clearSearchBtn) {\n clearBtn = this.renderCustomBtn(this.props.clearSearchBtn,\n [ this.handleClearBtnClick ], ClearSearchButton.name, 'onClick', this.handleClearBtnClick); /* eslint max-len: 0*/\n } else {\n clearBtn = (\n \n );\n }\n classNames += ' input-group input-group-sm';\n }\n\n if (this.props.searchField) {\n searchField = this.props.searchField({\n search: this.handleKeyUp,\n defaultValue: this.props.defaultSearch,\n placeholder: this.props.searchPlaceholder\n });\n if (searchField.type.name === SearchField.name) {\n searchField = React.cloneElement(searchField, {\n ref: node => this.seachInput = node,\n onKeyUp: this.handleKeyUp\n });\n } else {\n searchField = React.cloneElement(searchField, {\n ref: node => this.seachInput = node\n });\n }\n } else {\n searchField = (\n this.seachInput = node }\n defaultValue={ this.props.defaultSearch }\n placeholder={ this.props.searchPlaceholder }\n onKeyUp={ this.handleKeyUp }/>\n );\n }\n if (this.props.searchPanel) {\n searchPanel = this.props.searchPanel({\n searchField, clearBtn,\n search: this.props.onSearch,\n defaultValue: this.props.defaultSearch,\n placeholder: this.props.searchPlaceholder,\n clearBtnClick: this.handleClearBtnClick\n });\n } else {\n searchPanel = (\n \n { searchField }\n \n { clearBtn }\n \n
\n );\n }\n return [ searchPanel, searchField, clearBtn ];\n } else {\n return [];\n }\n }\n\n renderInsertRowModal() {\n const validateState = this.state.validateState || {};\n const {\n version,\n columns,\n ignoreEditable,\n insertModalHeader,\n insertModalBody,\n insertModalFooter,\n insertModal\n } = this.props;\n\n let modal;\n modal = insertModal && insertModal(\n this.handleModalClose,\n this.handleSaveBtnClick,\n columns,\n validateState,\n ignoreEditable\n );\n\n if (!modal) {\n modal = (\n \n );\n }\n\n return (\n \n { modal }\n \n );\n }\n\n renderCustomBtn(cb, params, componentName, eventName, event) {\n let element = cb.apply(null, params);\n if (element.type.name === componentName && !element.props[eventName]) {\n const props = {};\n props[eventName] = event;\n element = React.cloneElement(element, props);\n }\n return element;\n }\n}\n\nToolBar.propTypes = {\n version: PropTypes.string,\n onAddRow: PropTypes.func,\n onDropRow: PropTypes.func,\n onShowOnlySelected: PropTypes.func,\n enableInsert: PropTypes.bool,\n enableDelete: PropTypes.bool,\n enableSearch: PropTypes.bool,\n enableShowOnlySelected: PropTypes.bool,\n columns: PropTypes.array,\n searchPlaceholder: PropTypes.string,\n exportCSVText: PropTypes.string,\n insertText: PropTypes.string,\n deleteText: PropTypes.string,\n saveText: PropTypes.string,\n closeText: PropTypes.string,\n clearSearch: PropTypes.bool,\n ignoreEditable: PropTypes.bool,\n defaultSearch: PropTypes.string,\n insertModalHeader: PropTypes.func,\n insertModalBody: PropTypes.func,\n insertModalFooter: PropTypes.func,\n insertModal: PropTypes.func,\n insertBtn: PropTypes.func,\n deleteBtn: PropTypes.func,\n showSelectedOnlyBtn: PropTypes.func,\n exportCSVBtn: PropTypes.func,\n clearSearchBtn: PropTypes.func,\n searchField: PropTypes.func,\n searchPanel: PropTypes.func,\n btnGroup: PropTypes.func,\n toolBar: PropTypes.func,\n searchPosition: PropTypes.string,\n reset: PropTypes.bool,\n isValidKey: PropTypes.func,\n insertFailIndicator: PropTypes.string\n};\n\nToolBar.defaultProps = {\n reset: false,\n enableInsert: false,\n enableDelete: false,\n enableSearch: false,\n enableShowOnlySelected: false,\n clearSearch: false,\n ignoreEditable: false,\n exportCSVText: Const.EXPORT_CSV_TEXT,\n insertText: Const.INSERT_BTN_TEXT,\n deleteText: Const.DELETE_BTN_TEXT,\n saveText: Const.SAVE_BTN_TEXT,\n closeText: Const.CLOSE_BTN_TEXT\n};\n\nexport default ToolBar;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/ToolBar.js","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _Modal = require(\"./components/Modal\");\n\nvar _Modal2 = _interopRequireDefault(_Modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = _Modal2.default;\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/index.js\n// module id = 45\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.bodyOpenClassName = exports.portalClassName = undefined;\n\nvar _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; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require(\"react-dom\");\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _propTypes = require(\"prop-types\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _ModalPortal = require(\"./ModalPortal\");\n\nvar _ModalPortal2 = _interopRequireDefault(_ModalPortal);\n\nvar _ariaAppHider = require(\"../helpers/ariaAppHider\");\n\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\n\nvar _safeHTMLElement = require(\"../helpers/safeHTMLElement\");\n\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\n\nvar _reactLifecyclesCompat = require(\"react-lifecycles-compat\");\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _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; }\n\nvar portalClassName = exports.portalClassName = \"ReactModalPortal\";\nvar bodyOpenClassName = exports.bodyOpenClassName = \"ReactModal__Body--open\";\n\nvar isReact16 = _reactDom2.default.createPortal !== undefined;\n\nvar getCreatePortal = function getCreatePortal() {\n return isReact16 ? _reactDom2.default.createPortal : _reactDom2.default.unstable_renderSubtreeIntoContainer;\n};\n\nfunction getParentElement(parentSelector) {\n return parentSelector();\n}\n\nvar Modal = function (_Component) {\n _inherits(Modal, _Component);\n\n function Modal() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Modal);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Modal.__proto__ || Object.getPrototypeOf(Modal)).call.apply(_ref, [this].concat(args))), _this), _this.removePortal = function () {\n !isReact16 && _reactDom2.default.unmountComponentAtNode(_this.node);\n var parent = getParentElement(_this.props.parentSelector);\n if (parent) {\n parent.removeChild(_this.node);\n } else {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"parentSelector\" prop did not returned any DOM ' + \"element. Make sure that the parent element is unmounted to \" + \"avoid any memory leaks.\");\n }\n }, _this.portalRef = function (ref) {\n _this.portal = ref;\n }, _this.renderPortal = function (props) {\n var createPortal = getCreatePortal();\n var portal = createPortal(_this, _react2.default.createElement(_ModalPortal2.default, _extends({ defaultStyles: Modal.defaultStyles }, props)), _this.node);\n _this.portalRef(portal);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Modal, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (!_safeHTMLElement.canUseDOM) return;\n\n if (!isReact16) {\n this.node = document.createElement(\"div\");\n }\n this.node.className = this.props.portalClassName;\n\n var parent = getParentElement(this.props.parentSelector);\n parent.appendChild(this.node);\n\n !isReact16 && this.renderPortal(this.props);\n }\n }, {\n key: \"getSnapshotBeforeUpdate\",\n value: function getSnapshotBeforeUpdate(prevProps) {\n var prevParent = getParentElement(prevProps.parentSelector);\n var nextParent = getParentElement(this.props.parentSelector);\n return { prevParent: prevParent, nextParent: nextParent };\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps, _, snapshot) {\n if (!_safeHTMLElement.canUseDOM) return;\n var _props = this.props,\n isOpen = _props.isOpen,\n portalClassName = _props.portalClassName;\n\n\n if (prevProps.portalClassName !== portalClassName) {\n this.node.className = portalClassName;\n }\n\n var prevParent = snapshot.prevParent,\n nextParent = snapshot.nextParent;\n\n if (nextParent !== prevParent) {\n prevParent.removeChild(this.node);\n nextParent.appendChild(this.node);\n }\n\n // Stop unnecessary renders if modal is remaining closed\n if (!prevProps.isOpen && !isOpen) return;\n\n !isReact16 && this.renderPortal(this.props);\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (!_safeHTMLElement.canUseDOM || !this.node || !this.portal) return;\n\n var state = this.portal.state;\n var now = Date.now();\n var closesAt = state.isOpen && this.props.closeTimeoutMS && (state.closesAt || now + this.props.closeTimeoutMS);\n\n if (closesAt) {\n if (!state.beforeClose) {\n this.portal.closeWithTimeout();\n }\n\n setTimeout(this.removePortal, closesAt - now);\n } else {\n this.removePortal();\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n if (!_safeHTMLElement.canUseDOM || !isReact16) {\n return null;\n }\n\n if (!this.node && isReact16) {\n this.node = document.createElement(\"div\");\n }\n\n var createPortal = getCreatePortal();\n return createPortal(_react2.default.createElement(_ModalPortal2.default, _extends({\n ref: this.portalRef,\n defaultStyles: Modal.defaultStyles\n }, this.props)), this.node);\n }\n }], [{\n key: \"setAppElement\",\n value: function setAppElement(element) {\n ariaAppHider.setElement(element);\n }\n\n /* eslint-disable react/no-unused-prop-types */\n\n /* eslint-enable react/no-unused-prop-types */\n\n }]);\n\n return Modal;\n}(_react.Component);\n\nModal.propTypes = {\n isOpen: _propTypes2.default.bool.isRequired,\n style: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n portalClassName: _propTypes2.default.string,\n bodyOpenClassName: _propTypes2.default.string,\n htmlOpenClassName: _propTypes2.default.string,\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n base: _propTypes2.default.string.isRequired,\n afterOpen: _propTypes2.default.string.isRequired,\n beforeClose: _propTypes2.default.string.isRequired\n })]),\n overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n base: _propTypes2.default.string.isRequired,\n afterOpen: _propTypes2.default.string.isRequired,\n beforeClose: _propTypes2.default.string.isRequired\n })]),\n appElement: _propTypes2.default.instanceOf(_safeHTMLElement2.default),\n onAfterOpen: _propTypes2.default.func,\n onRequestClose: _propTypes2.default.func,\n closeTimeoutMS: _propTypes2.default.number,\n ariaHideApp: _propTypes2.default.bool,\n shouldFocusAfterRender: _propTypes2.default.bool,\n shouldCloseOnOverlayClick: _propTypes2.default.bool,\n shouldReturnFocusAfterClose: _propTypes2.default.bool,\n parentSelector: _propTypes2.default.func,\n aria: _propTypes2.default.object,\n data: _propTypes2.default.object,\n role: _propTypes2.default.string,\n contentLabel: _propTypes2.default.string,\n shouldCloseOnEsc: _propTypes2.default.bool,\n overlayRef: _propTypes2.default.func,\n contentRef: _propTypes2.default.func\n};\nModal.defaultProps = {\n isOpen: false,\n portalClassName: portalClassName,\n bodyOpenClassName: bodyOpenClassName,\n role: \"dialog\",\n ariaHideApp: true,\n closeTimeoutMS: 0,\n shouldFocusAfterRender: true,\n shouldCloseOnEsc: true,\n shouldCloseOnOverlayClick: true,\n shouldReturnFocusAfterClose: true,\n parentSelector: function parentSelector() {\n return document.body;\n }\n};\nModal.defaultStyles = {\n overlay: {\n position: \"fixed\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n backgroundColor: \"rgba(255, 255, 255, 0.75)\"\n },\n content: {\n position: \"absolute\",\n top: \"40px\",\n left: \"40px\",\n right: \"40px\",\n bottom: \"40px\",\n border: \"1px solid #ccc\",\n background: \"#fff\",\n overflow: \"auto\",\n WebkitOverflowScrolling: \"touch\",\n borderRadius: \"4px\",\n outline: \"none\",\n padding: \"20px\"\n }\n};\n\n\n(0, _reactLifecyclesCompat.polyfill)(Modal);\n\nexports.default = Modal;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/components/Modal.js\n// module id = 46\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; };\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require(\"prop-types\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _focusManager = require(\"../helpers/focusManager\");\n\nvar focusManager = _interopRequireWildcard(_focusManager);\n\nvar _scopeTab = require(\"../helpers/scopeTab\");\n\nvar _scopeTab2 = _interopRequireDefault(_scopeTab);\n\nvar _ariaAppHider = require(\"../helpers/ariaAppHider\");\n\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\n\nvar _classList = require(\"../helpers/classList\");\n\nvar classList = _interopRequireWildcard(_classList);\n\nvar _safeHTMLElement = require(\"../helpers/safeHTMLElement\");\n\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\n\nvar _portalOpenInstances = require(\"../helpers/portalOpenInstances\");\n\nvar _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);\n\nrequire(\"../helpers/bodyTrap\");\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _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; }\n\n// so that our CSS is statically analyzable\nvar CLASS_NAMES = {\n overlay: \"ReactModal__Overlay\",\n content: \"ReactModal__Content\"\n};\n\nvar TAB_KEY = 9;\nvar ESC_KEY = 27;\n\nvar ariaHiddenInstances = 0;\n\nvar ModalPortal = function (_Component) {\n _inherits(ModalPortal, _Component);\n\n function ModalPortal(props) {\n _classCallCheck(this, ModalPortal);\n\n var _this = _possibleConstructorReturn(this, (ModalPortal.__proto__ || Object.getPrototypeOf(ModalPortal)).call(this, props));\n\n _this.setOverlayRef = function (overlay) {\n _this.overlay = overlay;\n _this.props.overlayRef && _this.props.overlayRef(overlay);\n };\n\n _this.setContentRef = function (content) {\n _this.content = content;\n _this.props.contentRef && _this.props.contentRef(content);\n };\n\n _this.afterClose = function () {\n var _this$props = _this.props,\n appElement = _this$props.appElement,\n ariaHideApp = _this$props.ariaHideApp,\n htmlOpenClassName = _this$props.htmlOpenClassName,\n bodyOpenClassName = _this$props.bodyOpenClassName;\n\n // Remove classes.\n\n bodyOpenClassName && classList.remove(document.body, bodyOpenClassName);\n\n htmlOpenClassName && classList.remove(document.getElementsByTagName(\"html\")[0], htmlOpenClassName);\n\n // Reset aria-hidden attribute if all modals have been removed\n if (ariaHideApp && ariaHiddenInstances > 0) {\n ariaHiddenInstances -= 1;\n\n if (ariaHiddenInstances === 0) {\n ariaAppHider.show(appElement);\n }\n }\n\n if (_this.props.shouldFocusAfterRender) {\n if (_this.props.shouldReturnFocusAfterClose) {\n focusManager.returnFocus();\n focusManager.teardownScopedFocus();\n } else {\n focusManager.popWithoutFocus();\n }\n }\n\n if (_this.props.onAfterClose) {\n _this.props.onAfterClose();\n }\n\n _portalOpenInstances2.default.deregister(_this);\n };\n\n _this.open = function () {\n _this.beforeOpen();\n if (_this.state.afterOpen && _this.state.beforeClose) {\n clearTimeout(_this.closeTimer);\n _this.setState({ beforeClose: false });\n } else {\n if (_this.props.shouldFocusAfterRender) {\n focusManager.setupScopedFocus(_this.node);\n focusManager.markForFocusLater();\n }\n\n _this.setState({ isOpen: true }, function () {\n _this.setState({ afterOpen: true });\n\n if (_this.props.isOpen && _this.props.onAfterOpen) {\n _this.props.onAfterOpen({\n overlayEl: _this.overlay,\n contentEl: _this.content\n });\n }\n });\n }\n };\n\n _this.close = function () {\n if (_this.props.closeTimeoutMS > 0) {\n _this.closeWithTimeout();\n } else {\n _this.closeWithoutTimeout();\n }\n };\n\n _this.focusContent = function () {\n return _this.content && !_this.contentHasFocus() && _this.content.focus();\n };\n\n _this.closeWithTimeout = function () {\n var closesAt = Date.now() + _this.props.closeTimeoutMS;\n _this.setState({ beforeClose: true, closesAt: closesAt }, function () {\n _this.closeTimer = setTimeout(_this.closeWithoutTimeout, _this.state.closesAt - Date.now());\n });\n };\n\n _this.closeWithoutTimeout = function () {\n _this.setState({\n beforeClose: false,\n isOpen: false,\n afterOpen: false,\n closesAt: null\n }, _this.afterClose);\n };\n\n _this.handleKeyDown = function (event) {\n if (event.keyCode === TAB_KEY) {\n (0, _scopeTab2.default)(_this.content, event);\n }\n\n if (_this.props.shouldCloseOnEsc && event.keyCode === ESC_KEY) {\n event.stopPropagation();\n _this.requestClose(event);\n }\n };\n\n _this.handleOverlayOnClick = function (event) {\n if (_this.shouldClose === null) {\n _this.shouldClose = true;\n }\n\n if (_this.shouldClose && _this.props.shouldCloseOnOverlayClick) {\n if (_this.ownerHandlesClose()) {\n _this.requestClose(event);\n } else {\n _this.focusContent();\n }\n }\n _this.shouldClose = null;\n };\n\n _this.handleContentOnMouseUp = function () {\n _this.shouldClose = false;\n };\n\n _this.handleOverlayOnMouseDown = function (event) {\n if (!_this.props.shouldCloseOnOverlayClick && event.target == _this.overlay) {\n event.preventDefault();\n }\n };\n\n _this.handleContentOnClick = function () {\n _this.shouldClose = false;\n };\n\n _this.handleContentOnMouseDown = function () {\n _this.shouldClose = false;\n };\n\n _this.requestClose = function (event) {\n return _this.ownerHandlesClose() && _this.props.onRequestClose(event);\n };\n\n _this.ownerHandlesClose = function () {\n return _this.props.onRequestClose;\n };\n\n _this.shouldBeClosed = function () {\n return !_this.state.isOpen && !_this.state.beforeClose;\n };\n\n _this.contentHasFocus = function () {\n return document.activeElement === _this.content || _this.content.contains(document.activeElement);\n };\n\n _this.buildClassName = function (which, additional) {\n var classNames = (typeof additional === \"undefined\" ? \"undefined\" : _typeof(additional)) === \"object\" ? additional : {\n base: CLASS_NAMES[which],\n afterOpen: CLASS_NAMES[which] + \"--after-open\",\n beforeClose: CLASS_NAMES[which] + \"--before-close\"\n };\n var className = classNames.base;\n if (_this.state.afterOpen) {\n className = className + \" \" + classNames.afterOpen;\n }\n if (_this.state.beforeClose) {\n className = className + \" \" + classNames.beforeClose;\n }\n return typeof additional === \"string\" && additional ? className + \" \" + additional : className;\n };\n\n _this.attributesFromObject = function (prefix, items) {\n return Object.keys(items).reduce(function (acc, name) {\n acc[prefix + \"-\" + name] = items[name];\n return acc;\n }, {});\n };\n\n _this.state = {\n afterOpen: false,\n beforeClose: false\n };\n\n _this.shouldClose = null;\n _this.moveFromContentToOverlay = null;\n return _this;\n }\n\n _createClass(ModalPortal, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (this.props.isOpen) {\n this.open();\n }\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps, prevState) {\n if (process.env.NODE_ENV !== \"production\") {\n if (prevProps.bodyOpenClassName !== this.props.bodyOpenClassName) {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"bodyOpenClassName\" prop has been modified. ' + \"This may cause unexpected behavior when multiple modals are open.\");\n }\n if (prevProps.htmlOpenClassName !== this.props.htmlOpenClassName) {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"htmlOpenClassName\" prop has been modified. ' + \"This may cause unexpected behavior when multiple modals are open.\");\n }\n }\n\n if (this.props.isOpen && !prevProps.isOpen) {\n this.open();\n } else if (!this.props.isOpen && prevProps.isOpen) {\n this.close();\n }\n\n // Focus only needs to be set once when the modal is being opened\n if (this.props.shouldFocusAfterRender && this.state.isOpen && !prevState.isOpen) {\n this.focusContent();\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (this.state.isOpen) {\n this.afterClose();\n }\n clearTimeout(this.closeTimer);\n }\n }, {\n key: \"beforeOpen\",\n value: function beforeOpen() {\n var _props = this.props,\n appElement = _props.appElement,\n ariaHideApp = _props.ariaHideApp,\n htmlOpenClassName = _props.htmlOpenClassName,\n bodyOpenClassName = _props.bodyOpenClassName;\n\n // Add classes.\n\n bodyOpenClassName && classList.add(document.body, bodyOpenClassName);\n\n htmlOpenClassName && classList.add(document.getElementsByTagName(\"html\")[0], htmlOpenClassName);\n\n if (ariaHideApp) {\n ariaHiddenInstances += 1;\n ariaAppHider.hide(appElement);\n }\n\n _portalOpenInstances2.default.register(this);\n }\n\n // Don't steal focus from inner elements\n\n }, {\n key: \"render\",\n value: function render() {\n var _props2 = this.props,\n id = _props2.id,\n className = _props2.className,\n overlayClassName = _props2.overlayClassName,\n defaultStyles = _props2.defaultStyles;\n\n var contentStyles = className ? {} : defaultStyles.content;\n var overlayStyles = overlayClassName ? {} : defaultStyles.overlay;\n\n return this.shouldBeClosed() ? null : _react2.default.createElement(\n \"div\",\n {\n ref: this.setOverlayRef,\n className: this.buildClassName(\"overlay\", overlayClassName),\n style: _extends({}, overlayStyles, this.props.style.overlay),\n onClick: this.handleOverlayOnClick,\n onMouseDown: this.handleOverlayOnMouseDown\n },\n _react2.default.createElement(\n \"div\",\n _extends({\n id: id,\n ref: this.setContentRef,\n style: _extends({}, contentStyles, this.props.style.content),\n className: this.buildClassName(\"content\", className),\n tabIndex: \"-1\",\n onKeyDown: this.handleKeyDown,\n onMouseDown: this.handleContentOnMouseDown,\n onMouseUp: this.handleContentOnMouseUp,\n onClick: this.handleContentOnClick,\n role: this.props.role,\n \"aria-label\": this.props.contentLabel\n }, this.attributesFromObject(\"aria\", this.props.aria || {}), this.attributesFromObject(\"data\", this.props.data || {}), {\n \"data-testid\": this.props.testId\n }),\n this.props.children\n )\n );\n }\n }]);\n\n return ModalPortal;\n}(_react.Component);\n\nModalPortal.defaultProps = {\n style: {\n overlay: {},\n content: {}\n },\n defaultStyles: {}\n};\nModalPortal.propTypes = {\n isOpen: _propTypes2.default.bool.isRequired,\n defaultStyles: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n style: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n bodyOpenClassName: _propTypes2.default.string,\n htmlOpenClassName: _propTypes2.default.string,\n ariaHideApp: _propTypes2.default.bool,\n appElement: _propTypes2.default.instanceOf(_safeHTMLElement2.default),\n onAfterOpen: _propTypes2.default.func,\n onAfterClose: _propTypes2.default.func,\n onRequestClose: _propTypes2.default.func,\n closeTimeoutMS: _propTypes2.default.number,\n shouldFocusAfterRender: _propTypes2.default.bool,\n shouldCloseOnOverlayClick: _propTypes2.default.bool,\n shouldReturnFocusAfterClose: _propTypes2.default.bool,\n role: _propTypes2.default.string,\n contentLabel: _propTypes2.default.string,\n aria: _propTypes2.default.object,\n data: _propTypes2.default.object,\n children: _propTypes2.default.node,\n shouldCloseOnEsc: _propTypes2.default.bool,\n overlayRef: _propTypes2.default.func,\n contentRef: _propTypes2.default.func,\n id: _propTypes2.default.string,\n testId: _propTypes2.default.string\n};\nexports.default = ModalPortal;\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/components/ModalPortal.js\n// module id = 47\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.handleBlur = handleBlur;\nexports.handleFocus = handleFocus;\nexports.markForFocusLater = markForFocusLater;\nexports.returnFocus = returnFocus;\nexports.popWithoutFocus = popWithoutFocus;\nexports.setupScopedFocus = setupScopedFocus;\nexports.teardownScopedFocus = teardownScopedFocus;\n\nvar _tabbable = require(\"../helpers/tabbable\");\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar focusLaterElements = [];\nvar modalElement = null;\nvar needToFocus = false;\n\nfunction handleBlur() {\n needToFocus = true;\n}\n\nfunction handleFocus() {\n if (needToFocus) {\n needToFocus = false;\n if (!modalElement) {\n return;\n }\n // need to see how jQuery shims document.on('focusin') so we don't need the\n // setTimeout, firefox doesn't support focusin, if it did, we could focus\n // the element outside of a setTimeout. Side-effect of this implementation\n // is that the document.body gets focus, and then we focus our element right\n // after, seems fine.\n setTimeout(function () {\n if (modalElement.contains(document.activeElement)) {\n return;\n }\n var el = (0, _tabbable2.default)(modalElement)[0] || modalElement;\n el.focus();\n }, 0);\n }\n}\n\nfunction markForFocusLater() {\n focusLaterElements.push(document.activeElement);\n}\n\n/* eslint-disable no-console */\nfunction returnFocus() {\n var toFocus = null;\n try {\n if (focusLaterElements.length !== 0) {\n toFocus = focusLaterElements.pop();\n toFocus.focus();\n }\n return;\n } catch (e) {\n console.warn([\"You tried to return focus to\", toFocus, \"but it is not in the DOM anymore\"].join(\" \"));\n }\n}\n/* eslint-enable no-console */\n\nfunction popWithoutFocus() {\n focusLaterElements.length > 0 && focusLaterElements.pop();\n}\n\nfunction setupScopedFocus(element) {\n modalElement = element;\n\n if (window.addEventListener) {\n window.addEventListener(\"blur\", handleBlur, false);\n document.addEventListener(\"focus\", handleFocus, true);\n } else {\n window.attachEvent(\"onBlur\", handleBlur);\n document.attachEvent(\"onFocus\", handleFocus);\n }\n}\n\nfunction teardownScopedFocus() {\n modalElement = null;\n\n if (window.addEventListener) {\n window.removeEventListener(\"blur\", handleBlur);\n document.removeEventListener(\"focus\", handleFocus);\n } else {\n window.detachEvent(\"onBlur\", handleBlur);\n document.detachEvent(\"onFocus\", handleFocus);\n }\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/helpers/focusManager.js\n// module id = 48\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = findTabbableDescendants;\n/*!\n * Adapted from jQuery UI core\n *\n * http://jqueryui.com\n *\n * Copyright 2014 jQuery Foundation and other contributors\n * Released under the MIT license.\n * http://jquery.org/license\n *\n * http://api.jqueryui.com/category/ui-core/\n */\n\nvar tabbableNode = /input|select|textarea|button|object/;\n\nfunction hidesContents(element) {\n var zeroSize = element.offsetWidth <= 0 && element.offsetHeight <= 0;\n\n // If the node is empty, this is good enough\n if (zeroSize && !element.innerHTML) return true;\n\n // Otherwise we need to check some styles\n var style = window.getComputedStyle(element);\n return zeroSize ? style.getPropertyValue(\"overflow\") !== \"visible\" ||\n // if 'overflow: visible' set, check if there is actually any overflow\n element.scrollWidth <= 0 && element.scrollHeight <= 0 : style.getPropertyValue(\"display\") == \"none\";\n}\n\nfunction visible(element) {\n var parentElement = element;\n while (parentElement) {\n if (parentElement === document.body) break;\n if (hidesContents(parentElement)) return false;\n parentElement = parentElement.parentNode;\n }\n return true;\n}\n\nfunction focusable(element, isTabIndexNotNaN) {\n var nodeName = element.nodeName.toLowerCase();\n var res = tabbableNode.test(nodeName) && !element.disabled || (nodeName === \"a\" ? element.href || isTabIndexNotNaN : isTabIndexNotNaN);\n return res && visible(element);\n}\n\nfunction tabbable(element) {\n var tabIndex = element.getAttribute(\"tabindex\");\n if (tabIndex === null) tabIndex = undefined;\n var isTabIndexNaN = isNaN(tabIndex);\n return (isTabIndexNaN || tabIndex >= 0) && focusable(element, !isTabIndexNaN);\n}\n\nfunction findTabbableDescendants(element) {\n return [].slice.call(element.querySelectorAll(\"*\"), 0).filter(tabbable);\n}\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/helpers/tabbable.js\n// module id = 49\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = scopeTab;\n\nvar _tabbable = require(\"./tabbable\");\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction scopeTab(node, event) {\n var tabbable = (0, _tabbable2.default)(node);\n\n if (!tabbable.length) {\n // Do nothing, since there are no elements that can receive focus.\n event.preventDefault();\n return;\n }\n\n var target = void 0;\n\n var shiftKey = event.shiftKey;\n var head = tabbable[0];\n var tail = tabbable[tabbable.length - 1];\n\n // proceed with default browser behavior on tab.\n // Focus on last element on shift + tab.\n if (node === document.activeElement) {\n if (!shiftKey) return;\n target = tail;\n }\n\n if (tail === document.activeElement && !shiftKey) {\n target = head;\n }\n\n if (head === document.activeElement && shiftKey) {\n target = tail;\n }\n\n if (target) {\n event.preventDefault();\n target.focus();\n return;\n }\n\n // Safari radio issue.\n //\n // Safari does not move the focus to the radio button,\n // so we need to force it to really walk through all elements.\n //\n // This is very error prone, since we are trying to guess\n // if it is a safari browser from the first occurence between\n // chrome or safari.\n //\n // The chrome user agent contains the first ocurrence\n // as the 'chrome/version' and later the 'safari/version'.\n var checkSafari = /(\\bChrome\\b|\\bSafari\\b)\\//.exec(navigator.userAgent);\n var isSafariDesktop = checkSafari != null && checkSafari[1] != \"Chrome\" && /\\biPod\\b|\\biPad\\b/g.exec(navigator.userAgent) == null;\n\n // If we are not in safari desktop, let the browser control\n // the focus\n if (!isSafariDesktop) return;\n\n var x = tabbable.indexOf(document.activeElement);\n\n if (x > -1) {\n x += shiftKey ? -1 : 1;\n }\n\n target = tabbable[x];\n\n // If the tabbable element does not exist,\n // focus head/tail based on shiftKey\n if (typeof target === \"undefined\") {\n event.preventDefault();\n target = shiftKey ? tail : head;\n target.focus();\n return;\n }\n\n event.preventDefault();\n\n target.focus();\n}\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/helpers/scopeTab.js\n// module id = 50\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.assertNodeList = assertNodeList;\nexports.setElement = setElement;\nexports.validateElement = validateElement;\nexports.hide = hide;\nexports.show = show;\nexports.documentNotReadyOrSSRTesting = documentNotReadyOrSSRTesting;\nexports.resetForTesting = resetForTesting;\n\nvar _warning = require(\"warning\");\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nvar _safeHTMLElement = require(\"./safeHTMLElement\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar globalElement = null;\n\nfunction assertNodeList(nodeList, selector) {\n if (!nodeList || !nodeList.length) {\n throw new Error(\"react-modal: No elements were found for selector \" + selector + \".\");\n }\n}\n\nfunction setElement(element) {\n var useElement = element;\n if (typeof useElement === \"string\" && _safeHTMLElement.canUseDOM) {\n var el = document.querySelectorAll(useElement);\n assertNodeList(el, useElement);\n useElement = \"length\" in el ? el[0] : el;\n }\n globalElement = useElement || globalElement;\n return globalElement;\n}\n\nfunction validateElement(appElement) {\n if (!appElement && !globalElement) {\n (0, _warning2.default)(false, [\"react-modal: App element is not defined.\", \"Please use `Modal.setAppElement(el)` or set `appElement={el}`.\", \"This is needed so screen readers don't see main content\", \"when modal is opened. It is not recommended, but you can opt-out\", \"by setting `ariaHideApp={false}`.\"].join(\" \"));\n\n return false;\n }\n\n return true;\n}\n\nfunction hide(appElement) {\n if (validateElement(appElement)) {\n (appElement || globalElement).setAttribute(\"aria-hidden\", \"true\");\n }\n}\n\nfunction show(appElement) {\n if (validateElement(appElement)) {\n (appElement || globalElement).removeAttribute(\"aria-hidden\");\n }\n}\n\nfunction documentNotReadyOrSSRTesting() {\n globalElement = null;\n}\n\nfunction resetForTesting() {\n globalElement = null;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/helpers/ariaAppHider.js\n// module id = 51\n// module chunks = 0","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar __DEV__ = process.env.NODE_ENV !== 'production';\n\nvar warning = function() {};\n\nif (__DEV__) {\n var printWarning = function printWarning(format, args) {\n var len = arguments.length;\n args = new Array(len > 1 ? len - 1 : 0);\n for (var key = 1; key < len; key++) {\n args[key - 1] = arguments[key];\n }\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n }\n\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n if (!condition) {\n printWarning.apply(null, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/warning/warning.js\n// module id = 52\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.canUseDOM = undefined;\n\nvar _exenv = require(\"exenv\");\n\nvar _exenv2 = _interopRequireDefault(_exenv);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar EE = _exenv2.default;\n\nvar SafeHTMLElement = EE.canUseDOM ? window.HTMLElement : {};\n\nvar canUseDOM = exports.canUseDOM = EE.canUseDOM;\n\nexports.default = SafeHTMLElement;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/helpers/safeHTMLElement.js\n// module id = 53\n// module chunks = 0","/*!\n Copyright (c) 2015 Jed Watson.\n Based on code that is Copyright 2013-2015, Facebook, Inc.\n All rights reserved.\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar canUseDOM = !!(\n\t\ttypeof window !== 'undefined' &&\n\t\twindow.document &&\n\t\twindow.document.createElement\n\t);\n\n\tvar ExecutionEnvironment = {\n\n\t\tcanUseDOM: canUseDOM,\n\n\t\tcanUseWorkers: typeof Worker !== 'undefined',\n\n\t\tcanUseEventListeners:\n\t\t\tcanUseDOM && !!(window.addEventListener || window.attachEvent),\n\n\t\tcanUseViewport: canUseDOM && !!window.screen\n\n\t};\n\n\tif (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\tdefine(function () {\n\t\t\treturn ExecutionEnvironment;\n\t\t});\n\t} else if (typeof module !== 'undefined' && module.exports) {\n\t\tmodule.exports = ExecutionEnvironment;\n\t} else {\n\t\twindow.ExecutionEnvironment = ExecutionEnvironment;\n\t}\n\n}());\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/exenv/index.js\n// module id = 54\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.dumpClassLists = dumpClassLists;\nvar htmlClassList = {};\nvar docBodyClassList = {};\n\nfunction dumpClassLists() {\n if (process.env.NODE_ENV !== \"production\") {\n var classes = document.getElementsByTagName(\"html\")[0].className;\n var buffer = \"Show tracked classes:\\n\\n\";\n\n buffer += \" (\" + classes + \"):\\n\";\n for (var x in htmlClassList) {\n buffer += \" \" + x + \" \" + htmlClassList[x] + \"\\n\";\n }\n\n classes = document.body.className;\n\n // eslint-disable-next-line max-len\n buffer += \"\\n\\ndoc.body (\" + classes + \"):\\n\";\n for (var _x in docBodyClassList) {\n buffer += \" \" + _x + \" \" + docBodyClassList[_x] + \"\\n\";\n }\n\n buffer += \"\\n\";\n\n // eslint-disable-next-line no-console\n console.log(buffer);\n }\n}\n\n/**\n * Track the number of reference of a class.\n * @param {object} poll The poll to receive the reference.\n * @param {string} className The class name.\n * @return {string}\n */\nvar incrementReference = function incrementReference(poll, className) {\n if (!poll[className]) {\n poll[className] = 0;\n }\n poll[className] += 1;\n return className;\n};\n\n/**\n * Drop the reference of a class.\n * @param {object} poll The poll to receive the reference.\n * @param {string} className The class name.\n * @return {string}\n */\nvar decrementReference = function decrementReference(poll, className) {\n if (poll[className]) {\n poll[className] -= 1;\n }\n return className;\n};\n\n/**\n * Track a class and add to the given class list.\n * @param {Object} classListRef A class list of an element.\n * @param {Object} poll The poll to be used.\n * @param {Array} classes The list of classes to be tracked.\n */\nvar trackClass = function trackClass(classListRef, poll, classes) {\n classes.forEach(function (className) {\n incrementReference(poll, className);\n classListRef.add(className);\n });\n};\n\n/**\n * Untrack a class and remove from the given class list if the reference\n * reaches 0.\n * @param {Object} classListRef A class list of an element.\n * @param {Object} poll The poll to be used.\n * @param {Array} classes The list of classes to be untracked.\n */\nvar untrackClass = function untrackClass(classListRef, poll, classes) {\n classes.forEach(function (className) {\n decrementReference(poll, className);\n poll[className] === 0 && classListRef.remove(className);\n });\n};\n\n/**\n * Public inferface to add classes to the document.body.\n * @param {string} bodyClass The class string to be added.\n * It may contain more then one class\n * with ' ' as separator.\n */\nvar add = exports.add = function add(element, classString) {\n return trackClass(element.classList, element.nodeName.toLowerCase() == \"html\" ? htmlClassList : docBodyClassList, classString.split(\" \"));\n};\n\n/**\n * Public inferface to remove classes from the document.body.\n * @param {string} bodyClass The class string to be added.\n * It may contain more then one class\n * with ' ' as separator.\n */\nvar remove = exports.remove = function remove(element, classString) {\n return untrackClass(element.classList, element.nodeName.toLowerCase() == \"html\" ? htmlClassList : docBodyClassList, classString.split(\" \"));\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/helpers/classList.js\n// module id = 55\n// module chunks = 0","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n// Tracks portals that are open and emits events to subscribers\n\nvar PortalOpenInstances = function PortalOpenInstances() {\n var _this = this;\n\n _classCallCheck(this, PortalOpenInstances);\n\n this.register = function (openInstance) {\n if (_this.openInstances.indexOf(openInstance) !== -1) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Cannot register modal instance that's already open\");\n }\n return;\n }\n _this.openInstances.push(openInstance);\n _this.emit(\"register\");\n };\n\n this.deregister = function (openInstance) {\n var index = _this.openInstances.indexOf(openInstance);\n if (index === -1) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Unable to deregister \" + openInstance + \" as \" + \"it was never registered\");\n }\n return;\n }\n _this.openInstances.splice(index, 1);\n _this.emit(\"deregister\");\n };\n\n this.subscribe = function (callback) {\n _this.subscribers.push(callback);\n };\n\n this.emit = function (eventType) {\n _this.subscribers.forEach(function (subscriber) {\n return subscriber(eventType,\n // shallow copy to avoid accidental mutation\n _this.openInstances.slice());\n });\n };\n\n this.openInstances = [];\n this.subscribers = [];\n};\n\nvar portalOpenInstances = new PortalOpenInstances();\n\nexports.default = portalOpenInstances;\nmodule.exports = exports[\"default\"];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/helpers/portalOpenInstances.js\n// module id = 56\n// module chunks = 0","\"use strict\";\n\nvar _portalOpenInstances = require(\"./portalOpenInstances\");\n\nvar _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// Body focus trap see Issue #742\n\nvar before = void 0,\n after = void 0,\n instances = [];\n\nfunction focusContent() {\n if (instances.length === 0) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Open instances > 0 expected\");\n }\n return;\n }\n instances[instances.length - 1].focusContent();\n}\n\nfunction bodyTrap(eventType, openInstances) {\n if (!before || !after) {\n before = document.createElement(\"div\");\n before.setAttribute(\"data-react-modal-body-trap\", \"\");\n before.style.position = \"absolute\";\n before.style.opacity = \"0\";\n before.setAttribute(\"tabindex\", \"0\");\n before.addEventListener(\"focus\", focusContent);\n after = before.cloneNode();\n after.addEventListener(\"focus\", focusContent);\n }\n\n instances = openInstances;\n\n if (instances.length > 0) {\n // Add focus trap\n if (document.body.firstChild !== before) {\n document.body.insertBefore(before, document.body.firstChild);\n }\n if (document.body.lastChild !== after) {\n document.body.appendChild(after);\n }\n } else {\n // Remove focus trap\n if (before.parentElement) {\n before.parentElement.removeChild(before);\n }\n if (after.parentElement) {\n after.parentElement.removeChild(after);\n }\n }\n}\n\n_portalOpenInstances2.default.subscribe(bodyTrap);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-modal/lib/helpers/bodyTrap.js\n// module id = 57\n// module chunks = 0","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nfunction componentWillMount() {\n // Call this.constructor.gDSFP to support sub-classes.\n var state = this.constructor.getDerivedStateFromProps(this.props, this.state);\n if (state !== null && state !== undefined) {\n this.setState(state);\n }\n}\n\nfunction componentWillReceiveProps(nextProps) {\n // Call this.constructor.gDSFP to support sub-classes.\n // Use the setState() updater to ensure state isn't stale in certain edge cases.\n function updater(prevState) {\n var state = this.constructor.getDerivedStateFromProps(nextProps, prevState);\n return state !== null && state !== undefined ? state : null;\n }\n // Binding \"this\" is important for shallow renderer support.\n this.setState(updater.bind(this));\n}\n\nfunction componentWillUpdate(nextProps, nextState) {\n try {\n var prevProps = this.props;\n var prevState = this.state;\n this.props = nextProps;\n this.state = nextState;\n this.__reactInternalSnapshotFlag = true;\n this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(\n prevProps,\n prevState\n );\n } finally {\n this.props = prevProps;\n this.state = prevState;\n }\n}\n\n// React may warn about cWM/cWRP/cWU methods being deprecated.\n// Add a flag to suppress these warnings for this special case.\ncomponentWillMount.__suppressDeprecationWarning = true;\ncomponentWillReceiveProps.__suppressDeprecationWarning = true;\ncomponentWillUpdate.__suppressDeprecationWarning = true;\n\nfunction polyfill(Component) {\n var prototype = Component.prototype;\n\n if (!prototype || !prototype.isReactComponent) {\n throw new Error('Can only polyfill class components');\n }\n\n if (\n typeof Component.getDerivedStateFromProps !== 'function' &&\n typeof prototype.getSnapshotBeforeUpdate !== 'function'\n ) {\n return Component;\n }\n\n // If new component APIs are defined, \"unsafe\" lifecycles won't be called.\n // Error if any of these lifecycles are present,\n // Because they would work differently between older and newer (16.3+) versions of React.\n var foundWillMountName = null;\n var foundWillReceivePropsName = null;\n var foundWillUpdateName = null;\n if (typeof prototype.componentWillMount === 'function') {\n foundWillMountName = 'componentWillMount';\n } else if (typeof prototype.UNSAFE_componentWillMount === 'function') {\n foundWillMountName = 'UNSAFE_componentWillMount';\n }\n if (typeof prototype.componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'componentWillReceiveProps';\n } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';\n }\n if (typeof prototype.componentWillUpdate === 'function') {\n foundWillUpdateName = 'componentWillUpdate';\n } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') {\n foundWillUpdateName = 'UNSAFE_componentWillUpdate';\n }\n if (\n foundWillMountName !== null ||\n foundWillReceivePropsName !== null ||\n foundWillUpdateName !== null\n ) {\n var componentName = Component.displayName || Component.name;\n var newApiName =\n typeof Component.getDerivedStateFromProps === 'function'\n ? 'getDerivedStateFromProps()'\n : 'getSnapshotBeforeUpdate()';\n\n throw Error(\n 'Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n' +\n componentName +\n ' uses ' +\n newApiName +\n ' but also contains the following legacy lifecycles:' +\n (foundWillMountName !== null ? '\\n ' + foundWillMountName : '') +\n (foundWillReceivePropsName !== null\n ? '\\n ' + foundWillReceivePropsName\n : '') +\n (foundWillUpdateName !== null ? '\\n ' + foundWillUpdateName : '') +\n '\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\n' +\n 'https://fb.me/react-async-component-lifecycle-hooks'\n );\n }\n\n // React <= 16.2 does not support static getDerivedStateFromProps.\n // As a workaround, use cWM and cWRP to invoke the new static lifecycle.\n // Newer versions of React will ignore these lifecycles if gDSFP exists.\n if (typeof Component.getDerivedStateFromProps === 'function') {\n prototype.componentWillMount = componentWillMount;\n prototype.componentWillReceiveProps = componentWillReceiveProps;\n }\n\n // React <= 16.2 does not support getSnapshotBeforeUpdate.\n // As a workaround, use cWU to invoke the new lifecycle.\n // Newer versions of React will ignore that lifecycle if gSBU exists.\n if (typeof prototype.getSnapshotBeforeUpdate === 'function') {\n if (typeof prototype.componentDidUpdate !== 'function') {\n throw new Error(\n 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype'\n );\n }\n\n prototype.componentWillUpdate = componentWillUpdate;\n\n var componentDidUpdate = prototype.componentDidUpdate;\n\n prototype.componentDidUpdate = function componentDidUpdatePolyfill(\n prevProps,\n prevState,\n maybeSnapshot\n ) {\n // 16.3+ will not execute our will-update method;\n // It will pass a snapshot value to did-update though.\n // Older versions will require our polyfilled will-update value.\n // We need to handle both cases, but can't just check for the presence of \"maybeSnapshot\",\n // Because for <= 15.x versions this might be a \"prevContext\" object.\n // We also can't just check \"__reactInternalSnapshot\",\n // Because get-snapshot might return a falsy value.\n // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior.\n var snapshot = this.__reactInternalSnapshotFlag\n ? this.__reactInternalSnapshot\n : maybeSnapshot;\n\n componentDidUpdate.call(this, prevProps, prevState, snapshot);\n };\n }\n\n return Component;\n}\n\nexports.polyfill = polyfill;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/react-lifecycles-compat/react-lifecycles-compat.cjs.js\n// module id = 58\n// module chunks = 0","/* eslint no-console: 0 */\n\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nimport InsertModalHeader from './InsertModalHeader';\nimport InsertModalFooter from './InsertModalFooter';\nimport InsertModalBody from './InsertModalBody';\n\nconst defaultModalClassName = 'react-bs-table-insert-modal';\n\nexport default class InsertModal extends Component {\n\n handleSave = () => {\n if (this.body.getFieldValue) {\n this.props.onSave(this.body.getFieldValue());\n } else {\n console.error(`Custom InsertModalBody should implement getFieldValue function\n and should return an object presented as the new row that user input.`);\n }\n }\n\n render() {\n let { headerComponent, footerComponent, bodyComponent } = this.props;\n const {\n columns,\n validateState,\n ignoreEditable,\n onModalClose\n } = this.props;\n const bodyAttr = { columns, validateState, ignoreEditable };\n\n bodyComponent = bodyComponent && bodyComponent(columns, validateState, ignoreEditable);\n\n headerComponent = headerComponent && headerComponent(onModalClose, this.handleSave);\n\n footerComponent = footerComponent && footerComponent(onModalClose, this.handleSave);\n\n if (bodyComponent) {\n bodyComponent = React.cloneElement(bodyComponent, { ref: node => this.body = node });\n }\n\n if (headerComponent && headerComponent.type.name === InsertModalHeader.name) {\n const eventProps = {};\n if (!headerComponent.props.onModalClose) eventProps.onModalClose = onModalClose;\n if (!headerComponent.props.onSave) eventProps.onSave = this.handleSave;\n if (Object.keys(eventProps).length > 0) {\n headerComponent = React.cloneElement(headerComponent, eventProps);\n }\n } else if (headerComponent && headerComponent.type.name !== InsertModalHeader.name) {\n const { className } = headerComponent.props;\n if (typeof className === 'undefined' || className.indexOf('modal-header') === -1) {\n headerComponent = ({ headerComponent }
);\n }\n }\n\n if (footerComponent && footerComponent.type.name === InsertModalFooter.name) {\n const eventProps = {};\n if (!footerComponent.props.onModalClose) eventProps.onModalClose = onModalClose;\n if (!footerComponent.props.onSave) eventProps.onSave = this.handleSave;\n if (Object.keys(eventProps).length > 0) {\n footerComponent = React.cloneElement(footerComponent, eventProps);\n }\n } else if (footerComponent && footerComponent.type.name !== InsertModalFooter.name) {\n const { className } = footerComponent.props;\n if (typeof className === 'undefined' || className.indexOf('modal-footer') === -1) {\n footerComponent = ({ footerComponent }
);\n }\n }\n\n return (\n \n {\n headerComponent ||\n ()\n }\n {\n bodyComponent ||\n ( this.body = node } { ...bodyAttr }/>)\n }\n {\n footerComponent ||\n ()\n }\n
\n );\n }\n}\nInsertModal.propTypes = {\n version: PropTypes.string.isRequired,\n columns: PropTypes.array.isRequired,\n validateState: PropTypes.object.isRequired,\n ignoreEditable: PropTypes.bool,\n headerComponent: PropTypes.func,\n bodyComponent: PropTypes.func,\n footerComponent: PropTypes.func,\n onModalClose: PropTypes.func,\n onSave: PropTypes.func\n};\n\nInsertModal.defaultProps = {};\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/InsertModal.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Util from '../util';\n\nclass InsertModalHeader extends Component {\n\n handleCloseBtnClick = e => {\n const { onModalClose, beforeClose } = this.props;\n beforeClose && beforeClose(e);\n onModalClose();\n }\n\n renderContent(closeBtn) {\n const { version, title: titleText } = this.props;\n const title = { titleText }
;\n if (Util.isBootstrap4(version)) {\n return [ title, closeBtn ];\n } else {\n return (\n \n { closeBtn }\n { title }\n \n );\n }\n }\n\n render() {\n const {\n hideClose,\n className,\n children\n } = this.props;\n\n const closeBtn = hideClose ? null : (\n \n );\n\n const content = children || this.renderContent(closeBtn);\n\n return (\n \n { content }\n
\n );\n }\n}\n\nInsertModalHeader.propTypes = {\n version: PropTypes.string,\n className: PropTypes.string,\n title: PropTypes.string,\n onModalClose: PropTypes.func,\n hideClose: PropTypes.bool,\n beforeClose: PropTypes.func\n};\nInsertModalHeader.defaultProps = {\n version: '3',\n className: '',\n title: 'Add Row',\n onModalClose: undefined,\n hideClose: false,\n beforeClose: undefined\n};\n\nexport default InsertModalHeader;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/InsertModalHeader.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Const from '../Const';\n\nclass InsertModalFooter extends Component {\n\n handleCloseBtnClick = e => {\n const { beforeClose, onModalClose } = this.props;\n beforeClose && beforeClose(e);\n onModalClose();\n }\n\n handleSaveBtnClick = e => {\n const { beforeSave, onSave } = this.props;\n beforeSave && beforeSave(e);\n onSave();\n }\n\n render() {\n const {\n className,\n saveBtnText,\n closeBtnText,\n closeBtnContextual,\n saveBtnContextual,\n closeBtnClass,\n saveBtnClass,\n children\n } = this.props;\n\n const content = children || [\n (),\n ()\n ];\n\n return (\n \n { content }\n
\n );\n }\n}\nInsertModalFooter.propTypes = {\n className: PropTypes.string,\n saveBtnText: PropTypes.string,\n closeBtnText: PropTypes.string,\n closeBtnContextual: PropTypes.string,\n saveBtnContextual: PropTypes.string,\n closeBtnClass: PropTypes.string,\n saveBtnClass: PropTypes.string,\n beforeClose: PropTypes.func,\n beforeSave: PropTypes.func,\n onSave: PropTypes.func,\n onModalClose: PropTypes.func\n};\nInsertModalFooter.defaultProps = {\n className: '',\n saveBtnText: Const.SAVE_BTN_TEXT,\n closeBtnText: Const.CLOSE_BTN_TEXT,\n closeBtnContextual: 'btn-default btn-secondary',\n saveBtnContextual: 'btn-primary',\n closeBtnClass: '',\n saveBtnClass: '',\n beforeClose: undefined,\n beforeSave: undefined\n};\n\nexport default InsertModalFooter;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/InsertModalFooter.js","/* eslint react/display-name: 0 */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nimport editor from '../Editor';\n\nclass InsertModalBody extends Component {\n\n getFieldValue() {\n const newRow = {};\n this.props.columns.forEach((column, i) => {\n let inputVal;\n if (column.autoValue) {\n // when you want same auto generate value and not allow edit, example ID field\n const time = new Date().getTime();\n inputVal = typeof column.autoValue === 'function' ?\n column.autoValue() :\n (`autovalue-${time}`);\n } else if (column.hiddenOnInsert || !column.field) {\n inputVal = '';\n } else {\n const dom = this.refs[column.field + i];\n inputVal = dom.value;\n\n if (column.editable && column.editable.type === 'checkbox') {\n const values = inputVal.split(':');\n inputVal = dom.checked ? values[0] : values[1];\n } else if (column.customInsertEditor) {\n inputVal = inputVal || dom.getFieldValue();\n }\n }\n newRow[column.field] = inputVal;\n }, this);\n return newRow;\n }\n\n render() {\n const { columns, validateState, ignoreEditable } = this.props;\n return (\n \n {\n columns.map((column, i) => {\n const {\n editable,\n format,\n field,\n name,\n autoValue,\n hiddenOnInsert,\n customInsertEditor\n } = column;\n const attr = {\n ref: field + i,\n placeholder: editable.placeholder ? editable.placeholder : name\n };\n let fieldElement;\n const defaultValue = editable.defaultValue || undefined;\n if (customInsertEditor) {\n const { getElement } = customInsertEditor;\n fieldElement = getElement(column, attr, 'form-control', ignoreEditable, defaultValue);\n }\n\n // fieldElement = false, means to use default editor when enable custom editor\n // Becasuse some users want to have default editor based on some condition.\n if (!customInsertEditor || fieldElement === false) {\n fieldElement = editor(editable, attr, format, '', defaultValue, ignoreEditable);\n }\n\n if (autoValue || hiddenOnInsert || !column.field) {\n // when you want same auto generate value\n // and not allow edit, for example ID field\n return null;\n }\n const error = validateState[field] ?\n (
{ validateState[field] }) :\n null;\n return (\n
\n \n { fieldElement }\n { error }\n
\n );\n })\n }\n
\n );\n }\n}\nInsertModalBody.propTypes = {\n columns: PropTypes.array,\n validateState: PropTypes.object,\n ignoreEditable: PropTypes.bool\n};\n\nInsertModalBody.defaultProps = {\n validateState: {},\n ignoreEditable: false\n};\n\nexport default InsertModalBody;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/InsertModalBody.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Const from '../Const';\n\nconst insertBtnDefaultClass = 'react-bs-table-add-btn';\n\nclass InsertButton extends Component {\n render() {\n const {\n btnContextual,\n className,\n onClick,\n btnGlyphicon,\n btnText,\n children,\n ...rest\n } = this.props;\n const content = children ||\n ( { btnText });\n return (\n \n );\n }\n}\n\nInsertButton.propTypes = {\n btnText: PropTypes.string,\n btnContextual: PropTypes.string,\n className: PropTypes.string,\n onClick: PropTypes.func,\n btnGlyphicon: PropTypes.string\n};\nInsertButton.defaultProps = {\n btnText: Const.INSERT_BTN_TEXT,\n btnContextual: 'btn-info',\n className: '',\n onClick: undefined,\n btnGlyphicon: 'glyphicon-plus fa-plus'\n};\n\nexport default InsertButton;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/InsertButton.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Const from '../Const';\n\nconst deleteBtnDefaultClass = 'react-bs-table-del-btn';\n\nclass DeleteButton extends Component {\n render() {\n const {\n btnContextual,\n className,\n onClick,\n btnGlyphicon,\n btnText,\n children,\n ...rest\n } = this.props;\n const content = children ||\n ( { btnText });\n return (\n \n );\n }\n}\n\nDeleteButton.propTypes = {\n btnText: PropTypes.string,\n btnContextual: PropTypes.string,\n className: PropTypes.string,\n onClick: PropTypes.func,\n btnGlyphicon: PropTypes.string\n};\nDeleteButton.defaultProps = {\n btnText: Const.DELETE_BTN_TEXT,\n btnContextual: 'btn-warning',\n className: '',\n onClick: undefined,\n btnGlyphicon: 'glyphicon-trash fa-trash'\n};\n\nexport default DeleteButton;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/DeleteButton.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Const from '../Const';\n\nconst exportCsvBtnDefaultClass = 'react-bs-table-csv-btn';\n\nclass ExportCSVButton extends Component {\n render() {\n const {\n btnContextual,\n className,\n onClick,\n btnGlyphicon,\n btnText,\n children,\n ...rest\n } = this.props;\n const content = children ||\n ( { btnText });\n return (\n \n );\n }\n}\n\nExportCSVButton.propTypes = {\n btnText: PropTypes.string,\n btnContextual: PropTypes.string,\n className: PropTypes.string,\n onClick: PropTypes.func,\n btnGlyphicon: PropTypes.string\n};\nExportCSVButton.defaultProps = {\n btnText: Const.EXPORT_CSV_TEXT,\n btnContextual: 'btn-success',\n className: '',\n onClick: undefined,\n btnGlyphicon: 'glyphicon-export fa-download'\n};\n\nexport default ExportCSVButton;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/ExportCSVButton.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Const from '../Const';\n\nconst showSelectedOnlyBtnDefaultClass = 'react-bs-table-show-sel-only-btn';\n\nclass ShowSelectedOnlyButton extends Component {\n render() {\n const {\n btnContextual,\n className,\n onClick,\n toggle,\n showAllText,\n showOnlySelectText,\n children,\n ...rest\n } = this.props;\n const content = children ||\n ({ toggle ? showAllText : showOnlySelectText });\n return (\n \n );\n }\n}\n\nShowSelectedOnlyButton.propTypes = {\n showAllText: PropTypes.string,\n showOnlySelectText: PropTypes.string,\n toggle: PropTypes.bool,\n btnContextual: PropTypes.string,\n className: PropTypes.string,\n onClick: PropTypes.func\n};\nShowSelectedOnlyButton.defaultProps = {\n showAllText: Const.SHOW_ALL,\n showOnlySelectText: Const.SHOW_ONLY_SELECT,\n toggle: false,\n btnContextual: 'btn-primary',\n className: '',\n onClick: undefined\n};\n\nexport default ShowSelectedOnlyButton;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/ShowSelectedOnlyButton.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport ReactDOM from 'react-dom';\n\nclass SearchField extends Component {\n\n getValue() {\n return ReactDOM.findDOMNode(this).value;\n }\n\n setValue(value) {\n ReactDOM.findDOMNode(this).value = value;\n }\n\n render() {\n const {\n className,\n defaultValue,\n placeholder,\n onKeyUp,\n ...rest\n } = this.props;\n return (\n \n );\n }\n}\n\nSearchField.propTypes = {\n className: PropTypes.string,\n defaultValue: PropTypes.string,\n placeholder: PropTypes.string,\n onKeyUp: PropTypes.func\n};\nSearchField.defaultProps = {\n className: '',\n defaultValue: '',\n placeholder: 'Search',\n onKeyUp: undefined\n};\n\nexport default SearchField;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/SearchField.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nconst clearBtnDefaultClass = 'react-bs-table-search-clear-btn';\n\nclass ClearSearchButton extends Component {\n\n render() {\n const {\n btnContextual,\n className,\n onClick,\n btnText,\n children,\n ...rest\n } = this.props;\n const content = children ||\n ({ btnText });\n return (\n \n );\n }\n}\n\nClearSearchButton.propTypes = {\n btnContextual: PropTypes.string,\n className: PropTypes.string,\n btnText: PropTypes.string,\n onClick: PropTypes.func\n};\nClearSearchButton.defaultProps = {\n btnContextual: 'btn-default btn-secondary',\n className: '',\n btnText: 'Clear',\n onClick: undefined\n};\n\nexport default ClearSearchButton;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/ClearSearchButton.js","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Const from './Const';\nimport classSet from 'classnames';\n\nclass TableFilter extends Component {\n\n constructor(props) {\n super(props);\n this.filterObj = {};\n }\n\n handleKeyUp = e => {\n const { value, name } = e.currentTarget;\n if (value.trim() === '') {\n delete this.filterObj[name];\n } else {\n this.filterObj[name] = value;\n }\n this.props.onFilter(this.filterObj);\n }\n\n render() {\n const { striped, condensed, rowSelectType, columns } = this.props;\n const tableClasses = classSet('table', {\n 'table-striped': striped,\n 'table-condensed': condensed\n });\n let selectRowHeader = null;\n\n if (rowSelectType === Const.ROW_SELECT_SINGLE ||\n rowSelectType === Const.ROW_SELECT_MULTI) {\n const style = {\n width: 35,\n paddingLeft: 0,\n paddingRight: 0\n };\n selectRowHeader = (Filter | );\n }\n\n const filterField = columns.map(function(column) {\n const { hidden, width, name } = column;\n const thStyle = {\n display: hidden ? 'none' : null,\n width\n };\n return (\n \n \n \n \n | \n );\n }, this);\n\n return (\n \n \n \n { selectRowHeader }{ filterField }\n
\n \n
\n );\n }\n}\nTableFilter.propTypes = {\n columns: PropTypes.array,\n rowSelectType: PropTypes.string,\n onFilter: PropTypes.func\n};\nexport default TableFilter;\n\n\n\n// WEBPACK FOOTER //\n// src/TableFilter.js","/* eslint no-nested-ternary: 0 */\n/* eslint guard-for-in: 0 */\n/* eslint no-console: 0 */\n/* eslint eqeqeq: 0 */\n/* eslint one-var: 0 */\nimport Const from '../Const';\n\nexport class TableDataStore {\n\n constructor(data) {\n this.data = data;\n this.filteredData = null;\n this.isOnFilter = false;\n this.filterObj = null;\n this.searchText = null;\n this.sortList = [];\n this.pageObj = {};\n this.selected = [];\n this.showOnlySelected = false;\n }\n\n setProps(props) {\n this.keyField = props.keyField;\n this.enablePagination = props.isPagination;\n this.colInfos = props.colInfos;\n this.remote = props.remote;\n this.multiColumnSearch = props.multiColumnSearch;\n // default behaviour if strictSearch prop is not provided: !multiColumnSearch\n this.strictSearch = typeof props.strictSearch === 'undefined' ?\n !props.multiColumnSearch : props.strictSearch;\n this.multiColumnSort = props.multiColumnSort;\n }\n\n clean() {\n this.filteredData = null;\n this.isOnFilter = false;\n this.filterObj = null;\n this.searchText = null;\n this.sortList = [];\n this.pageObj = {};\n this.selected = [];\n }\n\n isSearching() {\n return this.searchText !== null;\n }\n\n isFiltering() {\n return this.filterObj !== null;\n }\n\n setData(data) {\n this.data = data;\n if (this.remote) {\n return;\n }\n\n this._refresh(true);\n }\n\n getColInfos() {\n return this.colInfos;\n }\n\n getSortInfo() {\n return this.sortList;\n }\n\n setSortInfo(order, sortField) {\n if (typeof order !== typeof sortField) {\n throw new Error('The type of sort field and order should be both with String or Array');\n }\n if (Array.isArray(order) && Array.isArray(sortField)) {\n if (order.length !== sortField.length) {\n throw new Error('The length of sort fields and orders should be equivalent');\n }\n order = order.slice().reverse();\n this.sortList = sortField.slice().reverse().map((field, i) => {\n return {\n order: order[i],\n sortField: field\n };\n });\n this.sortList = this.sortList.slice(0, this.multiColumnSort);\n } else {\n const sortObj = {\n order: order,\n sortField: sortField\n };\n\n if (this.multiColumnSort > 1) {\n let i = this.sortList.length - 1;\n let sortFieldInHistory = false;\n\n for (; i >= 0; i--) {\n if (this.sortList[i].sortField === sortField) {\n sortFieldInHistory = true;\n break;\n }\n }\n\n if (sortFieldInHistory) {\n if (i > 0) {\n this.sortList = this.sortList.slice(0, i);\n } else {\n this.sortList = this.sortList.slice(1);\n }\n }\n\n this.sortList.unshift(sortObj);\n this.sortList = this.sortList.slice(0, this.multiColumnSort);\n } else {\n this.sortList = [ sortObj ];\n }\n }\n }\n\n cleanSortInfo() {\n this.sortList = [];\n }\n\n setSelectedRowKey(selectedRowKeys) {\n this.selected = selectedRowKeys;\n }\n\n getRowByKey(keys) {\n // Bad Performance #1164\n // return keys.map(key => {\n // const result = this.data.filter(d => d[this.keyField] === key);\n // if (result.length !== 0) return result[0];\n // });\n const result = [];\n if (!keys || keys.length === 0) {\n return result;\n }\n for (let i = 0; i < this.data.length; i++) {\n const d = this.data[i];\n if (keys.indexOf(d[this.keyField]) > -1) {\n keys = keys.filter(k => k !== d[this.keyField]);\n result.push(d);\n }\n }\n return result;\n }\n\n getSelectedRowKeys() {\n return this.selected;\n }\n\n getCurrentDisplayData() {\n if (this.isOnFilter) return this.filteredData;\n else return this.data;\n }\n\n _refresh(skipSorting) {\n if (this.isOnFilter) {\n if (this.filterObj !== null) this.filter(this.filterObj);\n if (this.searchText !== null) this.search(this.searchText);\n }\n if (!skipSorting && this.sortList.length > 0) {\n this.sort();\n }\n }\n\n ignoreNonSelected() {\n this.showOnlySelected = !this.showOnlySelected;\n if (this.showOnlySelected) {\n this.isOnFilter = true;\n this.filteredData = this.data.filter( row => {\n const result = this.selected.find(x => row[this.keyField] === x);\n return typeof result !== 'undefined' ? true : false;\n });\n } else {\n this.isOnFilter = false;\n }\n }\n\n sort() {\n let currentDisplayData = this.getCurrentDisplayData();\n\n currentDisplayData = this._sort(currentDisplayData);\n\n return this;\n }\n\n page(page, sizePerPage) {\n this.pageObj.end = page * sizePerPage - 1;\n this.pageObj.start = this.pageObj.end - (sizePerPage - 1);\n return this;\n }\n\n edit(newVal, rowIndex, fieldName) {\n const currentDisplayData = this.getCurrentDisplayData();\n let rowKeyCache;\n if (!this.enablePagination) {\n currentDisplayData[rowIndex][fieldName] = newVal;\n rowKeyCache = currentDisplayData[rowIndex][this.keyField];\n } else {\n currentDisplayData[this.pageObj.start + rowIndex][fieldName] = newVal;\n rowKeyCache = currentDisplayData[this.pageObj.start + rowIndex][this.keyField];\n }\n if (this.isOnFilter) {\n this.data.forEach(function(row) {\n if (row[this.keyField] === rowKeyCache) {\n row[fieldName] = newVal;\n }\n }, this);\n if (this.filterObj !== null) this.filter(this.filterObj);\n if (this.searchText !== null) this.search(this.searchText);\n }\n return this;\n }\n\n addAtBegin(newObj) {\n if (!newObj[this.keyField] || newObj[this.keyField].toString() === '') {\n throw new Error(`${this.keyField} can't be empty value.`);\n }\n const currentDisplayData = this.getCurrentDisplayData();\n currentDisplayData.forEach(function(row) {\n if (row[this.keyField].toString() === newObj[this.keyField].toString()) {\n throw new Error(`${this.keyField} ${newObj[this.keyField]} already exists`);\n }\n }, this);\n currentDisplayData.unshift(newObj);\n if (this.isOnFilter) {\n this.data.unshift(newObj);\n }\n this._refresh(false);\n }\n\n add(newObj) {\n const e = this.isValidKey(newObj[this.keyField]);\n if (e) throw new Error(e);\n\n const currentDisplayData = this.getCurrentDisplayData();\n currentDisplayData.push(newObj);\n if (this.isOnFilter) {\n this.data.push(newObj);\n }\n this._refresh(false);\n }\n\n isValidKey = key => {\n if (key === null || key === undefined || key.toString() === '') {\n return `${this.keyField} can't be empty value.`;\n }\n const currentDisplayData = this.getCurrentDisplayData();\n const exist = currentDisplayData.find(row => row[this.keyField].toString() === key.toString());\n if (exist) return `${this.keyField} ${key} already exists`;\n }\n\n remove(rowKey) {\n const currentDisplayData = this.getCurrentDisplayData();\n const result = currentDisplayData.filter(row => {\n return rowKey.indexOf(row[this.keyField]) === -1;\n });\n\n if (this.isOnFilter) {\n this.data = this.data.filter(row => {\n return rowKey.indexOf(row[this.keyField]) === -1;\n });\n this.filteredData = result;\n } else {\n this.data = result;\n }\n }\n\n filter(filterObj) {\n if (Object.keys(filterObj).length === 0) {\n this.filteredData = null;\n this.isOnFilter = false;\n this.filterObj = null;\n if (this.searchText) this._search(this.data);\n } else {\n let source = this.data;\n this.filterObj = filterObj;\n if (this.searchText) {\n this._search(source);\n source = this.filteredData;\n }\n this._filter(source);\n }\n }\n\n filterNumber(targetVal, filterVal, comparator) {\n let valid = true;\n switch (comparator) {\n case '=': {\n if (targetVal != filterVal) {\n valid = false;\n }\n break;\n }\n case '>': {\n if (targetVal <= filterVal) {\n valid = false;\n }\n break;\n }\n case '>=': {\n if (targetVal < filterVal) {\n valid = false;\n }\n break;\n }\n case '<': {\n if (targetVal >= filterVal) {\n valid = false;\n }\n break;\n }\n case '<=': {\n if (targetVal > filterVal) {\n valid = false;\n }\n break;\n }\n case '!=': {\n if (targetVal == filterVal) {\n valid = false;\n }\n break;\n }\n default: {\n console.error('Number comparator provided is not supported');\n break;\n }\n }\n return valid;\n }\n\n filterDate(targetVal, filterVal, comparator) {\n if (!targetVal) return false;\n\n const filterDate = filterVal.getDate();\n const filterMonth = filterVal.getMonth();\n const filterYear = filterVal.getFullYear();\n\n if (typeof targetVal !== 'object') {\n targetVal = new Date(targetVal);\n }\n\n const targetDate = targetVal.getDate();\n const targetMonth = targetVal.getMonth();\n const targetYear = targetVal.getFullYear();\n\n let valid = true;\n switch (comparator) {\n case '=': {\n if (filterDate !== targetDate ||\n filterMonth !== targetMonth ||\n filterYear !== targetYear) {\n valid = false;\n }\n break;\n }\n case '>': {\n if (targetVal <= filterVal) {\n valid = false;\n }\n break;\n }\n case '>=': {\n if (targetYear < filterYear) {\n valid = false;\n } else if (targetYear === filterYear &&\n targetMonth < filterMonth) {\n valid = false;\n } else if (targetYear === filterYear &&\n targetMonth === filterMonth &&\n targetDate < filterDate) {\n valid = false;\n }\n break;\n }\n case '<': {\n if (targetVal >= filterVal) {\n valid = false;\n }\n break;\n }\n case '<=': {\n if (targetYear > filterYear) {\n valid = false;\n } else if (targetYear === filterYear &&\n targetMonth > filterMonth) {\n valid = false;\n } else if (targetYear === filterYear &&\n targetMonth === filterMonth &&\n targetDate > filterDate) {\n valid = false;\n }\n break;\n }\n case '!=': {\n if (filterDate === targetDate &&\n filterMonth === targetMonth &&\n filterYear === targetYear) {\n valid = false;\n }\n break;\n }\n default: {\n console.error('Date comparator provided is not supported');\n break;\n }\n }\n return valid;\n }\n\n filterRegex(targetVal, filterVal) {\n try {\n return new RegExp(filterVal, 'i').test(targetVal);\n } catch (e) {\n return true;\n }\n }\n\n filterCustom(targetVal, filterVal, callbackInfo, cond) {\n if (callbackInfo !== null && typeof callbackInfo === 'object') {\n return callbackInfo.callback(targetVal, callbackInfo.callbackParameters);\n }\n\n return this.filterText(targetVal, filterVal, cond);\n }\n\n filterText(targetVal = '', filterVal, cond = Const.FILTER_COND_LIKE) {\n targetVal = targetVal === null ? '' : targetVal.toString();\n filterVal = filterVal.toString();\n if (cond === Const.FILTER_COND_EQ) {\n return targetVal === filterVal;\n } else {\n targetVal = targetVal.toLowerCase();\n filterVal = filterVal.toLowerCase();\n return !(targetVal.indexOf(filterVal) === -1);\n }\n }\n\n /**\n * Filter if targetVal is contained in filterVal.\n */\n filterArray(targetVal, filterVal) {\n // case insensitive\n return filterVal.indexOf(targetVal) > -1;\n }\n\n /* General search function\n * It will search for the text if the input includes that text;\n */\n search(searchText) {\n if (searchText.trim() === '') {\n this.filteredData = null;\n this.isOnFilter = false;\n this.searchText = null;\n if (this.filterObj) this._filter(this.data);\n } else {\n let source = this.data;\n this.searchText = searchText;\n if (this.filterObj) {\n this._filter(source);\n source = this.filteredData;\n }\n this._search(source);\n }\n }\n\n _filter(source) {\n const filterObj = this.filterObj;\n this.filteredData = source.filter((row, r) => {\n let valid = true;\n let filterVal;\n for (const key in filterObj) {\n let targetVal = row[key];\n if (targetVal === null || targetVal === undefined) {\n targetVal = '';\n }\n\n switch (filterObj[key].type) {\n case Const.FILTER_TYPE.NUMBER: {\n filterVal = filterObj[key].value.number;\n break;\n }\n case Const.FILTER_TYPE.CUSTOM: {\n filterVal = (typeof filterObj[key].value === 'object') ?\n undefined :\n (typeof filterObj[key].value === 'string') ?\n filterObj[key].value.toLowerCase() :\n filterObj[key].value;\n break;\n }\n case Const.FILTER_TYPE.DATE: {\n filterVal = filterObj[key].value.date;\n break;\n }\n case Const.FILTER_TYPE.REGEX: {\n filterVal = filterObj[key].value;\n break;\n }\n case Const.FILTER_TYPE.ARRAY: {\n filterVal = filterObj[key].value;\n if (!Array.isArray(filterVal)) {\n throw new Error('Value must be an Array');\n }\n break;\n }\n default: {\n filterVal = filterObj[key].value;\n if (filterVal === undefined) {\n // Support old filter\n filterVal = filterObj[key];\n }\n break;\n }\n }\n let format, filterFormatted, formatExtraData, filterValue;\n if (this.colInfos[key]) {\n format = this.colInfos[key].format;\n filterFormatted = this.colInfos[key].filterFormatted;\n formatExtraData = this.colInfos[key].formatExtraData;\n filterValue = this.colInfos[key].filterValue;\n if (filterFormatted && format) {\n targetVal = format(row[key], row, formatExtraData, r);\n } else if (filterValue) {\n targetVal = filterValue(row[key], row);\n }\n }\n\n switch (filterObj[key].type) {\n case Const.FILTER_TYPE.NUMBER: {\n valid = this.filterNumber(targetVal, filterVal, filterObj[key].value.comparator);\n break;\n }\n case Const.FILTER_TYPE.DATE: {\n valid = this.filterDate(targetVal, filterVal, filterObj[key].value.comparator);\n break;\n }\n case Const.FILTER_TYPE.REGEX: {\n valid = this.filterRegex(targetVal, filterVal);\n break;\n }\n case Const.FILTER_TYPE.CUSTOM: {\n const cond = filterObj[key].props ? filterObj[key].props.cond : Const.FILTER_COND_LIKE;\n valid = this.filterCustom(targetVal, filterVal, filterObj[key].value, cond);\n break;\n }\n case Const.FILTER_TYPE.ARRAY: {\n valid = this.filterArray(targetVal, filterVal);\n break;\n }\n default: {\n if (filterObj[key].type === Const.FILTER_TYPE.SELECT &&\n filterFormatted && filterFormatted && format) {\n filterVal = format(filterVal, row, formatExtraData, r);\n }\n const cond = filterObj[key].props ? filterObj[key].props.cond : Const.FILTER_COND_LIKE;\n valid = this.filterText(targetVal, filterVal, cond);\n break;\n }\n }\n if (!valid) {\n break;\n }\n }\n return valid;\n });\n this.isOnFilter = true;\n }\n\n /*\n * Four different sort modes, all case insensitive:\n * (1) strictSearch && !multiColumnSearch\n * search text must be contained as provided in a single column\n * (2) strictSearch && multiColumnSearch\n * conjunction (AND combination) of whitespace separated terms over multiple columns\n * (3) !strictSearch && !multiColumnSearch\n * conjunction (AND combination) of whitespace separated terms in a single column\n * (4) !strictSearch && multiColumnSearch\n * any of the whitespace separated terms must be contained in any column\n */\n _search(source) {\n let searchTextArray;\n if (this.multiColumnSearch || !this.strictSearch) {\n // ignore leading and trailing whitespaces\n searchTextArray = this.searchText.trim().toLowerCase().split(/\\s+/);\n } else {\n searchTextArray = [ this.searchText.toLowerCase() ];\n }\n const searchTermCount = searchTextArray.length;\n const multipleTerms = searchTermCount > 1;\n const nonStrictMultiCol = multipleTerms && !this.strictSearch && this.multiColumnSearch;\n const nonStrictSingleCol = multipleTerms && !this.strictSearch && !this.multiColumnSearch;\n this.filteredData = source.filter((row, r) => {\n const keys = Object.keys(row);\n // only clone array if necessary\n let searchTerms = multipleTerms ? searchTextArray.slice() : searchTextArray;\n // for loops are ugly, but performance matters here.\n // And you cant break from a forEach.\n // http://jsperf.com/for-vs-foreach/66\n for (let i = 0, keysLength = keys.length; i < keysLength; i++) {\n const key = keys[i];\n const colInfo = this.colInfos[key];\n if (colInfo && colInfo.searchable) {\n const {\n format,\n filterFormatted,\n filterValue,\n formatExtraData\n } = colInfo;\n let targetVal;\n if (filterFormatted && format) {\n targetVal = format(row[key], row, formatExtraData, r);\n } else if (filterValue) {\n targetVal = filterValue(row[key], row);\n } else {\n targetVal = row[key];\n }\n if (targetVal !== null && typeof targetVal !== 'undefined') {\n targetVal = targetVal.toString().toLowerCase();\n if (nonStrictSingleCol && searchTermCount > searchTerms.length) {\n // reset search terms for single column search\n searchTerms = searchTextArray.slice();\n }\n for (let j = searchTerms.length - 1; j > -1; j--) {\n if (targetVal.indexOf(searchTerms[j]) !== -1) {\n if (nonStrictMultiCol || searchTerms.length === 1) {\n // match found: the last or only one\n return true;\n }\n // match found: but there are more search terms to check for\n searchTerms.splice(j, 1);\n } else if (!this.multiColumnSearch) {\n // one of the search terms was not found in this column\n break;\n }\n }\n }\n }\n }\n return false;\n });\n this.isOnFilter = true;\n }\n\n _sort(arr) {\n if (this.sortList.length === 0 || typeof(this.sortList[0]) === 'undefined') {\n return arr;\n }\n\n arr.sort((a, b) => {\n let result = 0;\n\n for (let i = 0; i < this.sortList.length; i++) {\n const sortDetails = this.sortList[i];\n const isDesc = sortDetails.order.toLowerCase() === Const.SORT_DESC;\n\n const { sortFunc, sortFuncExtraData } = this.colInfos[sortDetails.sortField];\n\n if (sortFunc) {\n result = sortFunc(a, b, sortDetails.order, sortDetails.sortField, sortFuncExtraData);\n } else {\n const valueA = a[sortDetails.sortField] == null ? '' : a[sortDetails.sortField];\n const valueB = b[sortDetails.sortField] == null ? '' : b[sortDetails.sortField];\n\n if (isDesc) {\n if (typeof valueB === 'string') {\n result = valueB.localeCompare(valueA);\n } else {\n result = valueA > valueB ? -1 : ((valueA < valueB) ? 1 : 0);\n }\n } else {\n if (typeof valueA === 'string') {\n result = valueA.localeCompare(valueB);\n } else {\n result = valueA < valueB ? -1 : ((valueA > valueB) ? 1 : 0);\n }\n }\n }\n\n if (result !== 0) {\n return result;\n }\n }\n\n return result;\n });\n\n return arr;\n }\n\n getDataIgnoringPagination() {\n return this.getCurrentDisplayData();\n }\n\n get() {\n const _data = this.getCurrentDisplayData();\n\n if (_data.length === 0) return _data;\n\n const remote = typeof this.remote === 'function' ?\n (this.remote(Const.REMOTE))[Const.REMOTE_PAGE] : this.remote;\n\n if (remote || !this.enablePagination) {\n return _data;\n } else {\n const result = [];\n for (let i = this.pageObj.start; i <= this.pageObj.end; i++) {\n result.push(_data[i]);\n if (i + 1 === _data.length) break;\n }\n return result;\n }\n }\n\n getKeyField() {\n return this.keyField;\n }\n\n getDataNum() {\n return this.getCurrentDisplayData().length;\n }\n\n isChangedPage() {\n return this.pageObj.start && this.pageObj.end ? true : false;\n }\n\n isEmpty() {\n return (this.data.length === 0 ||\n this.data === null ||\n this.data === undefined);\n }\n\n getAllRowkey() {\n return this.data.map(row => {\n return row[this.keyField];\n });\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/store/TableDataStore.js","/* eslint block-scoped-var: 0 */\n/* eslint vars-on-top: 0 */\n/* eslint no-var: 0 */\n/* eslint no-unused-vars: 0 */\nimport Util from './util';\nimport Const from './Const';\n\nif (Util.canUseDOM()) {\n const filesaver = require('./filesaver');\n var saveAs = filesaver.saveAs;\n}\n\nfunction toString(data, keys, separator, excludeCSVHeader) {\n let dataString = '';\n if (data.length === 0) return dataString;\n\n const headCells = [];\n let rowCount = 0;\n keys.forEach(key => {\n if (key.row > rowCount) {\n rowCount = key.row;\n }\n // rowCount += (key.rowSpan + key.colSpan - 1);\n for (var index = 0; index < key.colSpan; index++) {\n headCells.push(key);\n }\n });\n\n const firstRow = excludeCSVHeader ? 1 : 0;\n for (let i = firstRow; i <= rowCount; i++) {\n dataString += headCells.map(x => {\n if ((x.row + (x.rowSpan - 1)) === i) {\n return `\"${x.header}\"`;\n }\n if (x.row === i && x.rowSpan > 1) {\n return '';\n }\n }).filter(key => {\n return typeof key !== 'undefined';\n }).join(separator) + '\\n';\n }\n\n keys = keys.filter(key => {\n return key.field !== undefined;\n });\n\n data.map(function(row) {\n keys.map(function(col, i) {\n const { field, format, extraData, type } = col;\n let value = typeof format !== 'undefined' ? format(row[field], row, extraData) : row[field];\n value = type === Const.CSV_NUMBER_TYPE ? Number(value) : `\"${value}\"`;\n const cell = typeof value !== 'undefined' ? value : '';\n dataString += cell;\n if (i + 1 < keys.length) dataString += separator;\n });\n\n dataString += '\\n';\n });\n\n return dataString;\n}\n\nconst exportCSV = function(data, keys, filename, separator, noAutoBOM, excludeCSVHeader) {\n const dataString = toString(data, keys, separator, excludeCSVHeader);\n if (typeof window !== 'undefined') {\n noAutoBOM = noAutoBOM === undefined ? true : noAutoBOM;\n saveAs(new Blob([ '\\ufeff', dataString ],\n { type: 'text/plain;charset=utf-8' }),\n filename, noAutoBOM);\n }\n};\n\nexport default exportCSV;\n\n\n\n// WEBPACK FOOTER //\n// src/csv_export_util.js","/* FileSaver.js\n * A saveAs() FileSaver implementation.\n * 1.3.2\n * 2016-06-16 18:25:19\n *\n * By Eli Grey, http://eligrey.com\n * License: MIT\n * See https://github.com/eligrey/FileSaver.js/blob/master/LICENSE.md\n */\n\n/*global self */\n/*jslint bitwise: true, indent: 4, laxbreak: true, laxcomma: true, smarttabs: true, plusplus: true */\n\n/*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */\n\nvar saveAs = saveAs || (function(view) {\n\t\"use strict\";\n\t// IE <10 is explicitly unsupported\n\tif (typeof view === \"undefined\" || typeof navigator !== \"undefined\" && /MSIE [1-9]\\./.test(navigator.userAgent)) {\n\t\treturn;\n\t}\n\tvar\n\t\t doc = view.document\n\t\t // only get URL when necessary in case Blob.js hasn't overridden it yet\n\t\t, get_URL = function() {\n\t\t\treturn view.URL || view.webkitURL || view;\n\t\t}\n\t\t, save_link = doc.createElementNS(\"http://www.w3.org/1999/xhtml\", \"a\")\n\t\t, can_use_save_link = \"download\" in save_link\n\t\t, click = function(node) {\n\t\t\tvar event = new MouseEvent(\"click\");\n\t\t\tnode.dispatchEvent(event);\n\t\t}\n\t\t, is_safari = /constructor/i.test(view.HTMLElement) || view.safari\n\t\t, is_chrome_ios =/CriOS\\/[\\d]+/.test(navigator.userAgent)\n\t\t, throw_outside = function(ex) {\n\t\t\t(view.setImmediate || view.setTimeout)(function() {\n\t\t\t\tthrow ex;\n\t\t\t}, 0);\n\t\t}\n\t\t, force_saveable_type = \"application/octet-stream\"\n\t\t// the Blob API is fundamentally broken as there is no \"downloadfinished\" event to subscribe to\n\t\t, arbitrary_revoke_timeout = 1000 * 40 // in ms\n\t\t, revoke = function(file) {\n\t\t\tvar revoker = function() {\n\t\t\t\tif (typeof file === \"string\") { // file is an object URL\n\t\t\t\t\tget_URL().revokeObjectURL(file);\n\t\t\t\t} else { // file is a File\n\t\t\t\t\tfile.remove();\n\t\t\t\t}\n\t\t\t};\n\t\t\tsetTimeout(revoker, arbitrary_revoke_timeout);\n\t\t}\n\t\t, dispatch = function(filesaver, event_types, event) {\n\t\t\tevent_types = [].concat(event_types);\n\t\t\tvar i = event_types.length;\n\t\t\twhile (i--) {\n\t\t\t\tvar listener = filesaver[\"on\" + event_types[i]];\n\t\t\t\tif (typeof listener === \"function\") {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tlistener.call(filesaver, event || filesaver);\n\t\t\t\t\t} catch (ex) {\n\t\t\t\t\t\tthrow_outside(ex);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t, auto_bom = function(blob) {\n\t\t\t// prepend BOM for UTF-8 XML and text/* types (including HTML)\n\t\t\t// note: your browser will automatically convert UTF-16 U+FEFF to EF BB BF\n\t\t\tif (/^\\s*(?:text\\/\\S*|application\\/xml|\\S*\\/\\S*\\+xml)\\s*;.*charset\\s*=\\s*utf-8/i.test(blob.type)) {\n\t\t\t\treturn new Blob([String.fromCharCode(0xFEFF), blob], {type: blob.type});\n\t\t\t}\n\t\t\treturn blob;\n\t\t}\n\t\t, FileSaver = function(blob, name, no_auto_bom) {\n\t\t\tif (!no_auto_bom) {\n\t\t\t\tblob = auto_bom(blob);\n\t\t\t}\n\t\t\t// First try a.download, then web filesystem, then object URLs\n\t\t\tvar\n\t\t\t\t filesaver = this\n\t\t\t\t, type = blob.type\n\t\t\t\t, force = type === force_saveable_type\n\t\t\t\t, object_url\n\t\t\t\t, dispatch_all = function() {\n\t\t\t\t\tdispatch(filesaver, \"writestart progress write writeend\".split(\" \"));\n\t\t\t\t}\n\t\t\t\t// on any filesys errors revert to saving with object URLs\n\t\t\t\t, fs_error = function() {\n\t\t\t\t\tif ((is_chrome_ios || (force && is_safari)) && view.FileReader) {\n\t\t\t\t\t\t// Safari doesn't allow downloading of blob urls\n\t\t\t\t\t\tvar reader = new FileReader();\n\t\t\t\t\t\treader.onloadend = function() {\n\t\t\t\t\t\t\tvar url = is_chrome_ios ? reader.result : reader.result.replace(/^data:[^;]*;/, 'data:attachment/file;');\n\t\t\t\t\t\t\tvar popup = view.open(url, '_blank');\n\t\t\t\t\t\t\tif(!popup) view.location.href = url;\n\t\t\t\t\t\t\turl=undefined; // release reference before dispatching\n\t\t\t\t\t\t\tfilesaver.readyState = filesaver.DONE;\n\t\t\t\t\t\t\tdispatch_all();\n\t\t\t\t\t\t};\n\t\t\t\t\t\treader.readAsDataURL(blob);\n\t\t\t\t\t\tfilesaver.readyState = filesaver.INIT;\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\t// don't create more object URLs than needed\n\t\t\t\t\tif (!object_url) {\n\t\t\t\t\t\tobject_url = get_URL().createObjectURL(blob);\n\t\t\t\t\t}\n\t\t\t\t\tif (force) {\n\t\t\t\t\t\tview.location.href = object_url;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar opened = view.open(object_url, \"_blank\");\n\t\t\t\t\t\tif (!opened) {\n\t\t\t\t\t\t\t// Apple does not allow window.open, see https://developer.apple.com/library/safari/documentation/Tools/Conceptual/SafariExtensionGuide/WorkingwithWindowsandTabs/WorkingwithWindowsandTabs.html\n\t\t\t\t\t\t\tview.location.href = object_url;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tfilesaver.readyState = filesaver.DONE;\n\t\t\t\t\tdispatch_all();\n\t\t\t\t\trevoke(object_url);\n\t\t\t\t}\n\t\t\t;\n\t\t\tfilesaver.readyState = filesaver.INIT;\n\n\t\t\tif (can_use_save_link) {\n\t\t\t\tobject_url = get_URL().createObjectURL(blob);\n\t\t\t\tsetTimeout(function() {\n\t\t\t\t\tsave_link.href = object_url;\n\t\t\t\t\tsave_link.download = name;\n\t\t\t\t\tclick(save_link);\n\t\t\t\t\tdispatch_all();\n\t\t\t\t\trevoke(object_url);\n\t\t\t\t\tfilesaver.readyState = filesaver.DONE;\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tfs_error();\n\t\t}\n\t\t, FS_proto = FileSaver.prototype\n\t\t, saveAs = function(blob, name, no_auto_bom) {\n\t\t\treturn new FileSaver(blob, name || blob.name || \"download\", no_auto_bom);\n\t\t}\n\t;\n\t// IE 10+ (native saveAs)\n\tif (typeof navigator !== \"undefined\" && navigator.msSaveOrOpenBlob) {\n\t\treturn function(blob, name, no_auto_bom) {\n\t\t\tname = name || blob.name || \"download\";\n\n\t\t\tif (!no_auto_bom) {\n\t\t\t\tblob = auto_bom(blob);\n\t\t\t}\n\t\t\treturn navigator.msSaveOrOpenBlob(blob, name);\n\t\t};\n\t}\n\n\tFS_proto.abort = function(){};\n\tFS_proto.readyState = FS_proto.INIT = 0;\n\tFS_proto.WRITING = 1;\n\tFS_proto.DONE = 2;\n\n\tFS_proto.error =\n\tFS_proto.onwritestart =\n\tFS_proto.onprogress =\n\tFS_proto.onwrite =\n\tFS_proto.onabort =\n\tFS_proto.onerror =\n\tFS_proto.onwriteend =\n\t\tnull;\n\n\treturn saveAs;\n}(\n\t typeof self !== \"undefined\" && self\n\t|| typeof window !== \"undefined\" && window\n\t|| this.content\n));\n// `self` is undefined in Firefox for Android content script context\n// while `this` is nsIContentFrameMessageManager\n// with an attribute `content` that corresponds to the window\n\nif (typeof module !== \"undefined\" && module.exports) {\n module.exports.saveAs = saveAs;\n} else if ((typeof define !== \"undefined\" && define !== null) && (define.amd !== null)) {\n define(\"FileSaver.js\", function() {\n return saveAs;\n });\n}\n\n\n// WEBPACK FOOTER //\n// src/filesaver.js","module.exports = function() { throw new Error(\"define cannot be used indirect\"); };\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// (webpack)/buildin/amd-define.js\n// module id = 73\n// module chunks = 0","module.exports = __webpack_amd_options__;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// (webpack)/buildin/amd-options.js\n// module id = 74\n// module chunks = 0","import Const from './Const';\nimport { EventEmitter } from 'events';\n\nexport class Filter extends EventEmitter {\n constructor(data) {\n super(data);\n this.currentFilter = {};\n }\n\n handleFilter(dataField, value, type, filterObj) {\n const filterType = type || Const.FILTER_TYPE.CUSTOM;\n\n const props = {\n cond: filterObj.condition // Only for select and text filter\n };\n\n if (value !== null && typeof value === 'object') {\n // value of the filter is an object\n let hasValue = true;\n for (const prop in value) {\n if (!value[prop] || value[prop] === '') {\n hasValue = false;\n break;\n }\n }\n // if one of the object properties is undefined or empty, we remove the filter\n if (hasValue) {\n this.currentFilter[dataField] = { value: value, type: filterType, props };\n } else {\n delete this.currentFilter[dataField];\n }\n } else if (!value || value.trim() === '') {\n delete this.currentFilter[dataField];\n } else {\n this.currentFilter[dataField] = { value: value.trim(), type: filterType, props };\n }\n this.emit('onFilterChange', this.currentFilter);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// src/Filter.js","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nfunction EventEmitter() {\n this._events = this._events || {};\n this._maxListeners = this._maxListeners || undefined;\n}\nmodule.exports = EventEmitter;\n\n// Backwards-compat with node 0.10.x\nEventEmitter.EventEmitter = EventEmitter;\n\nEventEmitter.prototype._events = undefined;\nEventEmitter.prototype._maxListeners = undefined;\n\n// By default EventEmitters will print a warning if more than 10 listeners are\n// added to it. This is a useful default which helps finding memory leaks.\nEventEmitter.defaultMaxListeners = 10;\n\n// Obviously not all Emitters should be limited to 10. This function allows\n// that to be increased. Set to zero for unlimited.\nEventEmitter.prototype.setMaxListeners = function(n) {\n if (!isNumber(n) || n < 0 || isNaN(n))\n throw TypeError('n must be a positive number');\n this._maxListeners = n;\n return this;\n};\n\nEventEmitter.prototype.emit = function(type) {\n var er, handler, len, args, i, listeners;\n\n if (!this._events)\n this._events = {};\n\n // If there is no 'error' event listener then throw.\n if (type === 'error') {\n if (!this._events.error ||\n (isObject(this._events.error) && !this._events.error.length)) {\n er = arguments[1];\n if (er instanceof Error) {\n throw er; // Unhandled 'error' event\n }\n throw TypeError('Uncaught, unspecified \"error\" event.');\n }\n }\n\n handler = this._events[type];\n\n if (isUndefined(handler))\n return false;\n\n if (isFunction(handler)) {\n switch (arguments.length) {\n // fast cases\n case 1:\n handler.call(this);\n break;\n case 2:\n handler.call(this, arguments[1]);\n break;\n case 3:\n handler.call(this, arguments[1], arguments[2]);\n break;\n // slower\n default:\n len = arguments.length;\n args = new Array(len - 1);\n for (i = 1; i < len; i++)\n args[i - 1] = arguments[i];\n handler.apply(this, args);\n }\n } else if (isObject(handler)) {\n len = arguments.length;\n args = new Array(len - 1);\n for (i = 1; i < len; i++)\n args[i - 1] = arguments[i];\n\n listeners = handler.slice();\n len = listeners.length;\n for (i = 0; i < len; i++)\n listeners[i].apply(this, args);\n }\n\n return true;\n};\n\nEventEmitter.prototype.addListener = function(type, listener) {\n var m;\n\n if (!isFunction(listener))\n throw TypeError('listener must be a function');\n\n if (!this._events)\n this._events = {};\n\n // To avoid recursion in the case that type === \"newListener\"! Before\n // adding it to the listeners, first emit \"newListener\".\n if (this._events.newListener)\n this.emit('newListener', type,\n isFunction(listener.listener) ?\n listener.listener : listener);\n\n if (!this._events[type])\n // Optimize the case of one listener. Don't need the extra array object.\n this._events[type] = listener;\n else if (isObject(this._events[type]))\n // If we've already got an array, just append.\n this._events[type].push(listener);\n else\n // Adding the second element, need to change to array.\n this._events[type] = [this._events[type], listener];\n\n // Check for listener leak\n if (isObject(this._events[type]) && !this._events[type].warned) {\n var m;\n if (!isUndefined(this._maxListeners)) {\n m = this._maxListeners;\n } else {\n m = EventEmitter.defaultMaxListeners;\n }\n\n if (m && m > 0 && this._events[type].length > m) {\n this._events[type].warned = true;\n console.error('(node) warning: possible EventEmitter memory ' +\n 'leak detected. %d listeners added. ' +\n 'Use emitter.setMaxListeners() to increase limit.',\n this._events[type].length);\n if (typeof console.trace === 'function') {\n // not supported in IE 10\n console.trace();\n }\n }\n }\n\n return this;\n};\n\nEventEmitter.prototype.on = EventEmitter.prototype.addListener;\n\nEventEmitter.prototype.once = function(type, listener) {\n if (!isFunction(listener))\n throw TypeError('listener must be a function');\n\n var fired = false;\n\n function g() {\n this.removeListener(type, g);\n\n if (!fired) {\n fired = true;\n listener.apply(this, arguments);\n }\n }\n\n g.listener = listener;\n this.on(type, g);\n\n return this;\n};\n\n// emits a 'removeListener' event iff the listener was removed\nEventEmitter.prototype.removeListener = function(type, listener) {\n var list, position, length, i;\n\n if (!isFunction(listener))\n throw TypeError('listener must be a function');\n\n if (!this._events || !this._events[type])\n return this;\n\n list = this._events[type];\n length = list.length;\n position = -1;\n\n if (list === listener ||\n (isFunction(list.listener) && list.listener === listener)) {\n delete this._events[type];\n if (this._events.removeListener)\n this.emit('removeListener', type, listener);\n\n } else if (isObject(list)) {\n for (i = length; i-- > 0;) {\n if (list[i] === listener ||\n (list[i].listener && list[i].listener === listener)) {\n position = i;\n break;\n }\n }\n\n if (position < 0)\n return this;\n\n if (list.length === 1) {\n list.length = 0;\n delete this._events[type];\n } else {\n list.splice(position, 1);\n }\n\n if (this._events.removeListener)\n this.emit('removeListener', type, listener);\n }\n\n return this;\n};\n\nEventEmitter.prototype.removeAllListeners = function(type) {\n var key, listeners;\n\n if (!this._events)\n return this;\n\n // not listening for removeListener, no need to emit\n if (!this._events.removeListener) {\n if (arguments.length === 0)\n this._events = {};\n else if (this._events[type])\n delete this._events[type];\n return this;\n }\n\n // emit removeListener for all listeners on all events\n if (arguments.length === 0) {\n for (key in this._events) {\n if (key === 'removeListener') continue;\n this.removeAllListeners(key);\n }\n this.removeAllListeners('removeListener');\n this._events = {};\n return this;\n }\n\n listeners = this._events[type];\n\n if (isFunction(listeners)) {\n this.removeListener(type, listeners);\n } else {\n // LIFO order\n while (listeners.length)\n this.removeListener(type, listeners[listeners.length - 1]);\n }\n delete this._events[type];\n\n return this;\n};\n\nEventEmitter.prototype.listeners = function(type) {\n var ret;\n if (!this._events || !this._events[type])\n ret = [];\n else if (isFunction(this._events[type]))\n ret = [this._events[type]];\n else\n ret = this._events[type].slice();\n return ret;\n};\n\nEventEmitter.listenerCount = function(emitter, type) {\n var ret;\n if (!emitter._events || !emitter._events[type])\n ret = 0;\n else if (isFunction(emitter._events[type]))\n ret = 1;\n else\n ret = emitter._events[type].length;\n return ret;\n};\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\n\nfunction isNumber(arg) {\n return typeof arg === 'number';\n}\n\nfunction isObject(arg) {\n return typeof arg === 'object' && arg !== null;\n}\n\nfunction isUndefined(arg) {\n return arg === void 0;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/events/events.js\n// module id = 76\n// module chunks = 0","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\n\nclass ButtonGroup extends Component {\n render() {\n const {\n className,\n sizeClass,\n children,\n ...rest\n } = this.props;\n return (\n \n { children }\n
\n );\n }\n}\n\nButtonGroup.propTypes = {\n sizeClass: PropTypes.string,\n className: PropTypes.string\n};\nButtonGroup.defaultProps = {\n sizeClass: 'btn-group-sm',\n className: ''\n};\n\nexport default ButtonGroup;\n\n\n\n// WEBPACK FOOTER //\n// src/toolbar/ButtonGroup.js"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;ACtCA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;ACxCA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;AAlBA;AACA;AACA;AACA;AAiBA;;;AAEA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AARA;AAlCA;AA4CA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;AAAA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAZA;AACA;AACA;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAPA;AASA;;;AAEA;AACA;AADA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAzBA;AACA;AA2BA;AACA;AAIA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;AACA;AACA;AACA;AACA;;;AAAA;AACA;AACA;AAFA;AAAA;AAAA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;AAOA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AAQA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AAFA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AApBA;AAAA;AACA;AAqBA;AACA;AACA;AACA;AACA;AACA;AACA;AA5BA;AAAA;AACA;AA6BA;AACA;AA/BA;AAAA;AACA;AAgCA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA1BA;AA4BA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AA7EA;AAgFA;AACA;AAEA;AACA;AAxFA;AA2FA;;;AAEA;AACA;AADA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AAAA;AAEA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AADA;AAGA;AACA;;;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAEA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AAGA;AACA;;;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AAFA;AAAA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;;;AAEA;AACA;AADA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;;;AAEA;AACA;AACA;AACA;AAHA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AADA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AADA;AAAA;AAAA;AAAA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AACA;AAEA;AAHA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;;;AAEA;AACA;AACA;AAFA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AARA;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AALA;AAAA;AAAA;AAAA;AACA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AACA;AAOA;AACA;AAEA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA5BA;AA+BA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAEA;AAQA;AACA;AACA;AAAA;AAAA;AACA;AADA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAbA;AAeA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;AACA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAzCA;AA4CA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AAEA;AACA;AAEA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AADA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAbA;AAgBA;AACA;AACA;;;AAEA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AACA;AAEA;AACA;AAEA;AACA;AACA;AACA;AAGA;AAEA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AAHA;AACA;AACA;AAIA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AAhjDA;AACA;AAkjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAlBA;AAoBA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAKA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA5FA;AA8FA;AACA;AADA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AACA;AACA;AALA;AAOA;AApLA;AAsLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAbA;AAeA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAjFA;AAmFA;AACA;AADA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AAjKA;AACA;AAmKA;;;;;;;;;AA74DA;AACA;;;;;;;;;;ACrBA;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACvLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACtLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AChlBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACzFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACvGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AC/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACnDA;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC5UA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACzNA;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACtEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC7FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACpHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC3LA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAPA;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAnEA;AACA;AAqEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;AAhFA;AACA;;;;;;;;;;;;;;;;;;;;ACCA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;AAZA;AACA;AACA;AACA;AAUA;;;AAEA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AACA;AAFA;AAGA;AACA;AACA;AACA;AACA;;;;;;;;AADA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AALA;AAAA;AACA;AAMA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AADA;AACA;AAEA;AAEA;AACA;;;AAEA;AAAA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AACA;AAEA;AACA;AAAA;AACA;AACA;AAAA;AACA;AAEA;AACA;AAAA;AACA;AACA;AAAA;AACA;AAEA;AACA;AAAA;AACA;AACA;AAAA;AACA;AAEA;AACA;AAAA;AACA;AACA;AAAA;AACA;AAEA;AACA;AAAA;AACA;AACA;AAEA;AAAA;AAAA;AACA;AApCA;AAsCA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AADA;AAGA;AAAA;AAAA;AACA;AADA;AAJA;AASA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AAHA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAqBA;AACA;AACA;AAFA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AATA;AAcA;;;AAEA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAxBA;AA0BA;;;AAEA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AApBA;AAsBA;;;;AA3OA;AACA;AA6OA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AAZA;AAcA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA7DA;AACA;AA+DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAnCA;AACA;AAqCA;;;;;;;;;AAzVA;AACA;AA6OA;AACA;;;;;;;;;;;;;;;;AC3PA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AAGA;AACA;AACA;AADA;AAGA;AACA;AAAA;AACA;AADA;AAIA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AAEA;AAAA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AADA;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAGA;AACA;AAGA;AARA;AAWA;AA/HA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;ACJA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;AALA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA;AAAA;AACA;AADA;AACA;AACA;AACA;AACA;AAJA;AAKA;AACA;;;AACA;AACA;AADA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AADA;AAIA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AALA;AAOA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAbA;AAgBA;;;;AA/FA;AACA;AAiGA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AA7BA;AACA;AA+BA;AACA;AACA;AACA;AAFA;AADA;AACA;AAOA;;;;;;;;;AAhJA;AACA;AACA;AACA;AAGA;AACA;;;;;;;;;;;;;;;;;;ACbA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;AACA;AAAA;AACA;AADA;AACA;AACA;AACA;AACA;AACA;AADA;AAJA;AAOA;AACA;;;AACA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AAAA;AAAA;AACA;AACA;;;AAEA;AACA;AAAA;AAAA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;;;;AA9DA;AACA;AAgEA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AACA;AAQA;AACA;AADA;AACA;AAGA;;;;;;;;;AA9EA;AACA;;;;;;;;;;;;;;;;;;ACLA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;AACA;AAAA;AACA;AADA;AACA;AACA;AACA;AAHA;AAIA;AACA;;;AACA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;;;;AAlDA;AACA;AAoDA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AACA;AAQA;AACA;AADA;AACA;AAGA;;;;;;;;;AAlEA;AACA;;;;;;;;;;;;;;;;;;ACLA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA;AAAA;AACA;AADA;AACA;AACA;AACA;AACA;AADA;AAHA;AAOA;AACA;AACA;AACA;AACA;;;AADA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AAGA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AACA;;;AAEA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;;;AAEA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAEA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AAEA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AALA;AAQA;;;;AA5FA;AACA;AA8FA;AACA;AACA;AACA;AACA;AACA;AALA;AACA;AAOA;;;;;;;;;AAjHA;AACA;AASA;AACA;;;;;;;;;;;;;;;;;;AChBA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;AACA;AACA;;;AACA;AAAA;AACA;AADA;AACA;AACA;AACA;AACA;AACA;AADA;AAMA;AACA;AACA;AAZA;AAaA;AACA;;;AACA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AADA;AACA;AAEA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AADA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AADA;AAIA;AACA;AACA;;;AAEA;AACA;AADA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AAAA;AACA;AADA;AAIA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AAGA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAGA;AAPA;AAUA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAGA;AANA;AAQA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AA1BA;AAgCA;;;;AApJA;AACA;AAsJA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAlCA;AACA;AAoCA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAJA;AACA;AASA;;;;;;;;;AAxMA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACRA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;;;AACA;;;;;;;;;;;AACA;AAAA;AAAA;AACA;AACA;;;AAAA;AAAA;AAAA;AACA;AACA;;;AAAA;AACA;AACA;;;AACA;AACA;AAEA;AACA;AACA;AAEA;;;;AAfA;AACA;AAiBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAGA;AAIA;AACA;AADA;AAGA;AACA;AAEA;AACA;AACA;AAEA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AAIA;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAJA;AAAA;AAAA;AACA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AADA;AAIA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAFA;AAJA;AAYA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAHA;AAMA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAHA;AAMA;AACA;AACA;AACA;;;;AA3HA;AACA;AA4HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAxBA;AACA;AA0BA;;;;;;;;;AAtLA;AACA;AAiBA;AACA;AAWA;AACA;;;;;;;;;;;;;;;;;;ACxCA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;;;;;;;;;AAEA;AACA;AACA;AAAA;AACA;AACA;AAFA;AAKA;;;;AATA;AACA;AAUA;AACA;AACA;AAFA;AAIA;;;;;;;;;AAfA;AACA;;;;;;;;;;;;;;;;;;ACJA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AACA;AAFA;AAGA;AACA;;;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AACA;AAKA;AAGA;AACA;AACA;AACA;AAAA;AACA;AACA;AAEA;AAAA;AAAA;AACA;AAEA;AAHA;AAJA;AAYA;;;;AAnCA;AACA;AAoCA;AACA;AACA;AACA;AACA;AACA;AALA;AAOA;;;;;;;;;AA5CA;AACA;;;;;;;;;;;;;;;;;;ACJA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;;;;;;;;;AAEA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AAEA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAFA;AAKA;AAPA;AAWA;AACA;AApCA;AADA;AAFA;AADA;AA+CA;AAtDA;AA0DA;;;AAEA;AACA;AACA;;;;AAxEA;AACA;AAyEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AARA;AACA;AAUA;;;;;;;;;AArFA;AACA;;;;;;;;;;;;;;;;;;;;;;ACLA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;AACA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AACA;AACA;AADA;AAFA;AAKA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAGA;AAGA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AApBA;AAuBA;AACA;AACA;AACA;AACA;AACA;AAEA;AAKA;AACA;AA/GA;AAiHA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AAGA;AAtBA;AACA;AAwBA;AACA;AAGA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AARA;AAWA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAGA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAHA;AADA;AAQA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAFA;AAJA;AAYA;;;AAEA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AAGA;AAGA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AADA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AAEA;AAIA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAYA;AACA;AACA;AACA;AACA;AAGA;;AAEA;AAEA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AACA;AAEA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AATA;AAAA;AAAA;AACA;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AADA;AACA;AAMA;AAEA;AAEA;AACA;AACA;AAAA;AAAA;AACA;;;AAEA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;;;AAEA;AACA;AAAA;AAAA;AACA;;;AAEA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AADA;AACA;AADA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AACA;AACA;AAEA;AACA;AAAA;AAAA;AAEA;AAAA;AAAA;AARA;AAYA;;;AAEA;AAAA;AACA;AADA;AACA;AAAA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AAHA;AAMA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;;;;AApgBA;AACA;AAqgBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAjCA;AAmCA;;;;;;;;;AAziBA;AACA;;;;;;;;;;;;;;;;;;;;ACVA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;AALA;AACA;AACA;AAIA;;;AAEA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AACA;AAFA;AAGA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;AAAA;AACA;AAAA;AACA;AACA;AAHA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAMA;AACA;AACA;AACA;AACA;AACA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AAGA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AACA;AAIA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AALA;AAOA;;;;AA7GA;AACA;AA8GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAbA;AAeA;AACA;AACA;AACA;AAHA;AAKA;;;;;;;;;AAnIA;AACA;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAEA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AADA;AAAA;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAiBA;AACA;AACA;AAFA;AACA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAFA;AAIA;AAJA;AAOA;;;;AA9JA;AACA;AA+JA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAhBA;AACA;AAkBA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;;;;;;;;;AA3LA;AACA;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;AACA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AACA;AAFA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AACA;AAFA;AALA;AASA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAAA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;;;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;;;;;AASA;AACA;AARA;AACA;AACA;AACA;AACA;AACA;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AAFA;AAAA;AAAA;AACA;AAGA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA;AACA;AADA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AAEA;;;AAAA;AACA;AACA;AACA;AACA;AACA;;;;AAEA;;;AAAA;AACA;AACA;AACA;AACA;AACA;;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAUA;AAEA;AACA;AACA;AAJA;AAMA;AAjBA;AAAA;AACA;AACA;AAmBA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AAGA;AAHA;AAMA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAEA;AACA;AACA;AACA;AALA;AAQA;;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;AA9PA;AACA;AAgQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AApBA;AACA;AAuBA;;;;;;;;;AAzRA;AACA;;;;;;;;;;;;;;;;;;;;ACTA;AACA;;;AAAA;AACA;;;;;AACA;AACA;AAEA;AACA;AACA;AAEA;AAEA;AACA;AACA;AAEA;AACA;AAEA;AAGA;AACA;AAEA;AAEA;AAAA;AACA;AACA;AACA;AACA;AACA;AAIA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAEA;AAEA;AACA;AACA;AAAA;AACA;AADA;AAIA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAFA;AAAA;AAMA;AACA;AACA;AAAA;AACA;AACA;AAFA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AAEA;AACA;AAGA;AAAA;AACA;AAGA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;;;;;;;;;AAzHA;AACA;;;;;;;;;;;;;;;;;ACJA;AACA;;;;;AACA;AACA;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;;;;;;;;AAnBA;;;;;;;;;;;;;;;;;;;ACAA;AACA;;;AAAA;AACA;;;;;;;;;AAJA;AACA;AACA;AACA;AAEA;;;;;;;;;;;AAEA;AAAA;AACA;AACA;AACA;AACA;AADA;AAGA;AAJA;AAMA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AADA;AADA;AAMA;;;;AAjBA;AACA;AAmBA;;;;;;;;;AApBA;AACA;;;;;;;;;;;;;;;;;;;;ACNA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AACA;AACA;AADA;AAFA;AAKA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;AADA;AACA;AADA;AACA;AAEA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AADA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AADA;AAGA;AACA;;;AAEA;AACA;AACA;AACA;AADA;AAGA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AADA;AACA;AADA;AACA;AADA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AATA;AACA;AAeA;AACA;AACA;AAAA;AAEA;AAEA;AAAA;AACA;AAAA;AADA;AAIA;AAAA;AACA;AACA;AAFA;AARA;AAgBA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AAHA;AAAA;AAAA;AAAA;AAAA;AACA;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAPA;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AARA;AAUA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AANA;AADA;AAUA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAPA;AAUA;AACA;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA;AAEA;AACA;AACA;AACA;AAGA;AAEA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AASA;AACA;AAIA;AACA;AAAA;AACA;AADA;AAIA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AAhUA;AACA;AAiUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAxBA;AACA;AA0BA;AACA;AACA;AAFA;AACA;AAIA;;;;;;;;;AAlWA;AACA;;;;;;;;;;;;;;;;;;ACTA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAEA;AACA;;;;;;;;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AADA;AAIA;;;;AAvBA;AACA;AAwBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAPA;AACA;AASA;;;;;;;;;AAnCA;AACA;;;;;;;;;;;;;;;;;;ACLA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;AACA;AACA;;;;;;;;;;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AAFA;AAPA;AAYA;AAdA;AAiBA;;;;AAhDA;AACA;AAkDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AATA;AAWA;AACA;AACA;AACA;AACA;AACA;AALA;AACA;AAQA;;;;;;;;;AAzEA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;ACJA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AACA;AACA;;;AACA;AACA;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;AAhBA;AACA;AAIA;AACA;AACA;AACA;AACA;AAQA;;;AAIA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAJA;AAUA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;AA6IA;AAAA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AApKA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;;;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;;;AAEA;AACA;AAAA;AAAA;AACA;;;AAEA;AACA;AAAA;AAAA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AADA;AAGA;AACA;AACA;;;AAEA;AACA;AACA;;;AA0BA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAJA;AAOA;AACA;AA3EA;AAAA;AAAA;AAAA;AAAA;AACA;AA4EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AARA;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAXA;AAoBA;AACA;AACA;AAAA;AACA;AADA;AAIA;AAAA;AACA;AADA;AAIA;AACA;AACA;AACA;AAAA;AACA;AACA;AAFA;AAKA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AAAA;AAAA;AACA;AAFA;AAIA;AACA;AACA;AAAA;AAAA;AADA;AAGA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AALA;AAOA;AACA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AADA;AAFA;AAOA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAUA;AACA;AACA;AAOA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AALA;AAQA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AAtbA;AACA;AADA;AACA;AACA;AAubA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAnCA;AACA;AAqCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAZA;AACA;AAcA;;;;;;;;;AA9eA;AACA;;;;;;;;;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC9QA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACvaA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC7FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC3DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACxFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACpEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC3GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC5DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AC3DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AC/JA;AACA;;;AAAA;AACA;;;AACA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;AARA;AACA;AAQA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACA;AACA;AACA;AACA;AAEA;AACA;;;AAEA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AAEA;AAEA;AACA;AACA;AAGA;AACA;AAAA;AAGA;AAEA;AACA;AACA;AAjBA;AAqBA;;;;AAjFA;AACA;AADA;;;AAmFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AATA;AACA;AAWA;;;;;;;;AAjGA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACZA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAFA;AAKA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAKA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAHA;AACA;AAMA;AACA;AACA;AACA;AAAA;AACA;AADA;AAIA;;;;AA7CA;AACA;AA+CA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AACA;AAQA;;;;;;;;;AAjEA;AACA;;;;;;;;;;;;;;;;;;ACLA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAUA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAJA;AAKA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAJA;AACA;AAMA;AACA;AAAA;AACA;AADA;AAIA;;;;AA5CA;AACA;AA6CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAXA;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AATA;AACA;AAWA;;;;;;;;;AAvEA;AACA;;;;;;;;;;;;;;;;;;ACJA;AACA;;;AAAA;AACA;;;AACA;AACA;;;;;;;;;AALA;AACA;AACA;AAIA;;;;;;;;;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AASA;AACA;AACA;AAFA;AAIA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAEA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAHA;AAMA;AA5CA;AAgDA;;;;AAjFA;AACA;AAkFA;AACA;AACA;AACA;AAHA;AACA;AAKA;AACA;AACA;AAFA;AACA;AAIA;;;;;;;;;AA9FA;AACA;;;;;;;;;;;;;;;;;;;;ACPA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;;;AACA;AACA;AACA;;;;;;;;;;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AASA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AACA;AACA;AAFA;AAIA;AAJA;AAOA;;;;AArBA;AACA;AAuBA;AACA;AACA;AACA;AACA;AACA;AALA;AAOA;AACA;AACA;AACA;AACA;AACA;AALA;AACA;AAOA;;;;;;;;;AAzCA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACPA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;;;AACA;AACA;AACA;;;;;;;;;;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AASA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AACA;AACA;AAFA;AAIA;AAJA;AAOA;;;;AArBA;AACA;AAuBA;AACA;AACA;AACA;AACA;AACA;AALA;AAOA;AACA;AACA;AACA;AACA;AACA;AALA;AACA;AAOA;;;;;;;;;AAzCA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACPA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;;;AACA;AACA;AACA;;;;;;;;;;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AASA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AACA;AACA;AAFA;AAIA;AAJA;AAOA;;;;AArBA;AACA;AAuBA;AACA;AACA;AACA;AACA;AACA;AALA;AAOA;AACA;AACA;AACA;AACA;AACA;AALA;AACA;AAOA;;;;;;;;;AAzCA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACPA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;;;AACA;AACA;AACA;;;;;;;;;;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAUA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAJA;AAMA;AANA;AASA;;;;AAxBA;AACA;AA0BA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AACA;AAQA;;;;;;;;;AA9CA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACPA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;;;AACA;;;;;;;;;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAOA;AAEA;AACA;AACA;AACA;AACA;AACA;AANA;AASA;;;;AA5BA;AACA;AA8BA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AACA;AACA;AAJA;AACA;AAMA;;;;;;;;;AA5CA;AACA;;;;;;;;;;;;;;;;;;;;ACLA;AACA;;;AAAA;AACA;;;;;;;;;;;;;AACA;AACA;AACA;;;;;;;;;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAQA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AACA;AACA;AACA;AAHA;AAKA;AALA;AAQA;;;;AAtBA;AACA;AAwBA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AACA;AACA;AAJA;AACA;AAMA;;;;;;;;;AAxCA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACNA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;AAAA;AACA;;;;;;;;;;;AACA;;;AAEA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AACA;AAFA;AAGA;AACA;;;;;;;;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AAEA;AACA;AACA;AACA;AAHA;AAKA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AAFA;AADA;AAOA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AADA;AADA;AADA;AAQA;;;;AA5DA;AACA;AA6DA;AACA;AACA;AACA;AAHA;AAKA;;;;;;;;;AAnEA;AACA;;;;;;;;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AACA;;;;;;;AACA;AAEA;AAAA;AACA;AADA;AACA;AADA;AAAA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AACA;AAFA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAVA;AAWA;AACA;AACA;AAAA;AAAA;AACA;AACA;AAfA;AACA;AASA;AAAA;AAMA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AAEA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAxCA;AA0CA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAEA;AACA;AAGA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAEA;AACA;AAGA;AACA;AACA;AACA;AACA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AA1DA;AA4DA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AAAA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AAKA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAnCA;AAqCA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AA9BA;AAgCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;AAWA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAAA;AAAA;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AACA;;;AAEA;AACA;AAGA;;;AAEA;AAAA;AACA;AAAA;AACA;AACA;AACA;;;;;;;;;;;;;;AAxtBA;;;;;;;;;;;;;;;ACHA;AACA;;;AAAA;AACA;;;;;AANA;AACA;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAjBA;AAkBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA3BA;AACA;AAgBA;AAAA;AAWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;;;;;;;;;AA/DA;AACA;AAEA;AACA;AAiDA;AACA;;;;;;;;;;;;AC/DA;;;;;;;;;;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAEA;AAFA;AAAA;AAIA;AACA;AALA;AAAA;AAAA;AASA;AACA;AACA;AAXA;AAAA;AAAA;AAeA;AACA;AACA;AACA;AAlBA;AAoBA;AApBA;AAAA;AAAA;AAAA;AAuBA;AACA;AAAA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AA/BA;AAiCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA7CA;AA+CA;AACA;AACA;AACA;AACA;AACA;AACA;AArDA;AAuDA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAMA;AACA;AACA;AARA;AAAA;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAtHA;AAAA;AAyHA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;AA5KA;;;;;;;;;ACfA;;;;;;;ACAA;AACA;AACA;;;;;;;;;;;;;;;;;ACFA;AACA;;;AAAA;AACA;;;;;;;;;AACA;;;AACA;AAAA;AACA;AADA;AACA;AACA;AAFA;AAGA;AACA;;;AACA;AACA;AACA;AACA;AACA;AADA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AAlCA;AACA;;;;;;;;AADA;;;;;;;;;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AC5SA;AACA;;;AAAA;AACA;;;;;;;;;;;;;AACA;;;;;;;;;;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAMA;AACA;AAAA;AACA;AADA;AAIA;;;;AAbA;AACA;AAeA;AACA;AACA;AAFA;AAIA;AACA;AACA;AAFA;AACA;AAIA;;;;;;;;;AAzBA;AACA;;;;;;;;;","sourceRoot":""}
\ No newline at end of file
diff --git a/dist/react-bootstrap-table.min.js b/dist/react-bootstrap-table.min.js
index 5990b8441..f07969ef8 100644
--- a/dist/react-bootstrap-table.min.js
+++ b/dist/react-bootstrap-table.min.js
@@ -1,10 +1,10 @@
-!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react"),require("react-dom")):"function"==typeof define&&define.amd?define(["react","react-dom"],t):"object"==typeof exports?exports.ReactBootstrapTable=t(require("react"),require("react-dom")):e.ReactBootstrapTable=t(e.React,e.ReactDOM)}(this,function(e,t){return function(e){function t(o){if(n[o])return n[o].exports;var r=n[o]={exports:{},id:o,loaded:!1};return e[o].call(r.exports,r,r.exports,t),r.loaded=!0,r.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.SizePerPageDropDown=t.ButtonGroup=t.SearchField=t.ClearSearchButton=t.ExportCSVButton=t.ShowSelectedOnlyButton=t.DeleteButton=t.InsertButton=t.InsertModalFooter=t.InsertModalBody=t.InsertModalHeader=t.TableHeaderColumn=t.BootstrapTable=void 0;var r=n(33),a=o(r),l=n(15),i=o(l),s=n(23),u=o(s),f=n(21),d=o(f),c=n(22),p=o(c),h=n(20),y=o(h),m=n(18),b=o(m),v=n(19),g=o(v),E=n(25),C=o(E),O=n(17),w=o(O),T=n(24),S=o(T),_=n(54),P=o(_),x=n(16),R=o(x);"undefined"!=typeof window&&(window.BootstrapTable=a.default,window.TableHeaderColumn=i.default,window.InsertModalHeader=u.default,window.InsertModalBody=d.default,window.InsertModalFooter=p.default,window.InsertButton=y.default,window.DeleteButton=b.default,window.ShowSelectedOnlyButton=C.default,window.ExportCSVButton=g.default,window.ClearSearchButton=w.default,window.SearchField=S.default,window.ButtonGroup=P.default,window.SizePerPageDropDown=R.default),t.BootstrapTable=a.default,t.TableHeaderColumn=i.default,t.InsertModalHeader=u.default,t.InsertModalBody=d.default,t.InsertModalFooter=p.default,t.InsertButton=y.default,t.DeleteButton=b.default,t.ShowSelectedOnlyButton=C.default,t.ExportCSVButton=g.default,t.ClearSearchButton=w.default,t.SearchField=S.default,t.ButtonGroup=P.default,t.SizePerPageDropDown=R.default},function(t,n){t.exports=e},function(e,t,n){(function(t){if("production"!==t.env.NODE_ENV){var o="function"==typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103,r=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===o},a=!0;e.exports=n(63)(r,a)}else e.exports=n(62)()}).call(t,n(6))},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n={SORT_DESC:"desc",SORT_ASC:"asc",AWAIT_BEFORE_CELL_EDIT:1,SIZE_PER_PAGE:10,NEXT_PAGE:">",NEXT_PAGE_TITLE:"next page",LAST_PAGE:">>",LAST_PAGE_TITLE:"last page",PRE_PAGE:"<",PRE_PAGE_TITLE:"previous page",FIRST_PAGE:"<<",FIRST_PAGE_TITLE:"first page",PAGE_START_INDEX:1,ROW_SELECT_BG_COLOR:"",ROW_SELECT_NONE:"none",ROW_SELECT_SINGLE:"radio",ROW_SELECT_MULTI:"checkbox",CELL_EDIT_NONE:"none",CELL_EDIT_CLICK:"click",CELL_EDIT_DBCLICK:"dbclick",SIZE_PER_PAGE_LIST:[10,25,30,50],PAGINATION_SIZE:5,PAGINATION_POS_TOP:"top",PAGINATION_POS_BOTTOM:"bottom",PAGINATION_POS_BOTH:"both",TOOLBAR_POS_TOP:"top",TOOLBAR_POS_BOTTOM:"bottom",TOOLBAR_POS_BOTH:"both",NO_DATA_TEXT:"There is no data to display",SHOW_ONLY_SELECT:"Show Selected Only",SHOW_ALL:"Show All",EXPORT_CSV_TEXT:"Export to CSV",INSERT_BTN_TEXT:"New",DELETE_BTN_TEXT:"Delete",SAVE_BTN_TEXT:"Save",CLOSE_BTN_TEXT:"Close",FILTER_DELAY:500,SCROLL_TOP:"Top",SCROLL_BOTTOM:"Bottom",FILTER_TYPE:{TEXT:"TextFilter",REGEX:"RegexFilter",SELECT:"SelectFilter",NUMBER:"NumberFilter",DATE:"DateFilter",CUSTOM:"CustomFilter",ARRAY:"ArrayFilter"},FILTER_COND_EQ:"eq",FILTER_COND_LIKE:"like",EXPAND_BY_ROW:"row",EXPAND_BY_COL:"column",REMOTE_SORT:"sort",REMOTE_PAGE:"pagination",REMOTE_CELL_EDIT:"cellEdit",REMOTE_INSERT_ROW:"insertRow",REMOTE_DROP_ROW:"dropRow",REMOTE_FILTER:"filter",REMOTE_SEARCH:"search",REMOTE_EXPORT_CSV:"exportCSV",INSERT_FAIL_INDICATOR:"Validation errors, please check!",DEFAULT_CSV_SEPARATOR:",",CSV_STRING_TYPE:"string",CSV_NUMBER_TYPE:"number",AUTO_COLLAPSE_WHEN_SORT:!1,AUTO_COLLAPSE_WHEN_SEARCH:!1,AUTO_COLLAPSE_WHEN_FILTER:!1};n.REMOTE={},n.REMOTE[n.REMOTE_SORT]=!1,n.REMOTE[n.REMOTE_PAGE]=!1,n.REMOTE[n.REMOTE_CELL_EDIT]=!1,n.REMOTE[n.REMOTE_INSERT_ROW]=!1,n.REMOTE[n.REMOTE_DROP_ROW]=!1,n.REMOTE[n.REMOTE_FILTER]=!1,n.REMOTE[n.REMOTE_SEARCH]=!1,n.REMOTE[n.REMOTE_EXPORT_CSV]=!1,t.default=n},function(e,t,n){var o,r;/*!
- Copyright (c) 2016 Jed Watson.
+!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react"),require("react-dom")):"function"==typeof define&&define.amd?define(["react","react-dom"],t):"object"==typeof exports?exports.ReactBootstrapTable=t(require("react"),require("react-dom")):e.ReactBootstrapTable=t(e.React,e.ReactDOM)}(this,function(e,t){return function(e){function t(o){if(n[o])return n[o].exports;var r=n[o]={exports:{},id:o,loaded:!1};return e[o].call(r.exports,r,r.exports,t),r.loaded=!0,r.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.SizePerPageDropDown=t.ButtonGroup=t.SearchField=t.ClearSearchButton=t.ExportCSVButton=t.ShowSelectedOnlyButton=t.DeleteButton=t.InsertButton=t.InsertModalFooter=t.InsertModalBody=t.InsertModalHeader=t.TableHeaderColumn=t.BootstrapTable=void 0;var r=n(31),a=o(r),l=n(14),i=o(l),s=n(22),u=o(s),f=n(20),c=o(f),d=n(21),p=o(d),h=n(19),y=o(h),m=n(17),b=o(m),v=n(18),g=o(v),E=n(24),C=o(E),O=n(16),w=o(O),S=n(23),T=o(S),_=n(52),P=o(_),x=n(15),R=o(x);"undefined"!=typeof window&&(window.BootstrapTable=a.default,window.TableHeaderColumn=i.default,window.InsertModalHeader=u.default,window.InsertModalBody=c.default,window.InsertModalFooter=p.default,window.InsertButton=y.default,window.DeleteButton=b.default,window.ShowSelectedOnlyButton=C.default,window.ExportCSVButton=g.default,window.ClearSearchButton=w.default,window.SearchField=T.default,window.ButtonGroup=P.default,window.SizePerPageDropDown=R.default),t.BootstrapTable=a.default,t.TableHeaderColumn=i.default,t.InsertModalHeader=u.default,t.InsertModalBody=c.default,t.InsertModalFooter=p.default,t.InsertButton=y.default,t.DeleteButton=b.default,t.ShowSelectedOnlyButton=C.default,t.ExportCSVButton=g.default,t.ClearSearchButton=w.default,t.SearchField=T.default,t.ButtonGroup=P.default,t.SizePerPageDropDown=R.default},function(t,n){t.exports=e},function(e,t,n){(function(t){if("production"!==t.env.NODE_ENV){var o=n(25),r=!0;e.exports=n(61)(o.isElement,r)}else e.exports=n(60)()}).call(t,n(6))},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n={SORT_DESC:"desc",SORT_ASC:"asc",AWAIT_BEFORE_CELL_EDIT:1,SIZE_PER_PAGE:10,NEXT_PAGE:">",NEXT_PAGE_TITLE:"next page",LAST_PAGE:">>",LAST_PAGE_TITLE:"last page",PRE_PAGE:"<",PRE_PAGE_TITLE:"previous page",FIRST_PAGE:"<<",FIRST_PAGE_TITLE:"first page",PAGE_START_INDEX:1,ROW_SELECT_BG_COLOR:"",ROW_SELECT_NONE:"none",ROW_SELECT_SINGLE:"radio",ROW_SELECT_MULTI:"checkbox",CELL_EDIT_NONE:"none",CELL_EDIT_CLICK:"click",CELL_EDIT_DBCLICK:"dbclick",SIZE_PER_PAGE_LIST:[10,25,30,50],PAGINATION_SIZE:5,PAGINATION_POS_TOP:"top",PAGINATION_POS_BOTTOM:"bottom",PAGINATION_POS_BOTH:"both",TOOLBAR_POS_TOP:"top",TOOLBAR_POS_BOTTOM:"bottom",TOOLBAR_POS_BOTH:"both",NO_DATA_TEXT:"There is no data to display",SHOW_ONLY_SELECT:"Show Selected Only",SHOW_ALL:"Show All",EXPORT_CSV_TEXT:"Export to CSV",INSERT_BTN_TEXT:"New",DELETE_BTN_TEXT:"Delete",SAVE_BTN_TEXT:"Save",CLOSE_BTN_TEXT:"Close",FILTER_DELAY:500,SCROLL_TOP:"Top",SCROLL_BOTTOM:"Bottom",FILTER_TYPE:{TEXT:"TextFilter",REGEX:"RegexFilter",SELECT:"SelectFilter",NUMBER:"NumberFilter",DATE:"DateFilter",CUSTOM:"CustomFilter",ARRAY:"ArrayFilter"},FILTER_COND_EQ:"eq",FILTER_COND_LIKE:"like",EXPAND_BY_ROW:"row",EXPAND_BY_COL:"column",REMOTE_SORT:"sort",REMOTE_PAGE:"pagination",REMOTE_CELL_EDIT:"cellEdit",REMOTE_INSERT_ROW:"insertRow",REMOTE_DROP_ROW:"dropRow",REMOTE_FILTER:"filter",REMOTE_SEARCH:"search",REMOTE_EXPORT_CSV:"exportCSV",INSERT_FAIL_INDICATOR:"Validation errors, please check!",DEFAULT_CSV_SEPARATOR:",",CSV_STRING_TYPE:"string",CSV_NUMBER_TYPE:"number",AUTO_COLLAPSE_WHEN_SORT:!1,AUTO_COLLAPSE_WHEN_SEARCH:!1,AUTO_COLLAPSE_WHEN_FILTER:!1};n.REMOTE={},n.REMOTE[n.REMOTE_SORT]=!1,n.REMOTE[n.REMOTE_PAGE]=!1,n.REMOTE[n.REMOTE_CELL_EDIT]=!1,n.REMOTE[n.REMOTE_INSERT_ROW]=!1,n.REMOTE[n.REMOTE_DROP_ROW]=!1,n.REMOTE[n.REMOTE_FILTER]=!1,n.REMOTE[n.REMOTE_SEARCH]=!1,n.REMOTE[n.REMOTE_EXPORT_CSV]=!1,t.default=n},function(e,t,n){var o,r;/*!
+ Copyright (c) 2017 Jed Watson.
Licensed under the MIT License (MIT), see
http://jedwatson.github.io/classnames
*/
-!function(){"use strict";function n(){for(var e=[],t=0;t2&&void 0!==arguments[2]?arguments[2]:{},o=arguments[3],r=null,l=null,i=this.isBootstrap4(o),s=this.isSelectRowDefined(t.mode),u=i?"38px":"30px";if(s){var f={width:t.columnWidth||u,minWidth:t.columnWidth||u};t.hideSelectColumn||(r=a.default.createElement("col",{key:"select-col",style:f}))}if(n.expandColumnVisible){var d={width:n.columnWidth||u,minWidth:n.columnWidth||u};l=a.default.createElement("col",{key:"expand-col",style:d})}var c=e.map(function(e,t){var n={display:e.hidden?"none":null};if(e.width){var o=isNaN(e.width)?e.width:e.width+"px";n.width=o,n.minWidth=o}return a.default.createElement("col",{style:n,key:t})});return a.default.createElement("colgroup",null,n.expandColumnVisible&&n.expandColumnBeforeSelectColumn&&l,r,n.expandColumnVisible&&!n.expandColumnBeforeSelectColumn&&l,c)}}},function(e,t){function n(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function r(e){if(f===setTimeout)return setTimeout(e,0);if((f===n||!f)&&setTimeout)return f=setTimeout,setTimeout(e,0);try{return f(e,0)}catch(t){try{return f.call(null,e,0)}catch(t){return f.call(this,e,0)}}}function a(e){if(d===clearTimeout)return clearTimeout(e);if((d===o||!d)&&clearTimeout)return d=clearTimeout,clearTimeout(e);try{return d(e)}catch(t){try{return d.call(null,e)}catch(t){return d.call(this,e)}}}function l(){y&&p&&(y=!1,p.length?h=p.concat(h):m=-1,h.length&&i())}function i(){if(!y){var e=r(l);y=!0;for(var t=h.length;t;){for(p=h,h=[];++m1)for(var n=1;n0&&void 0!==arguments[0]?arguments[0]:[],t=arguments[1];switch(t.type){case"INSERT":return o(e,t);case"REMOVE":return r(e,t);case"REMOVEALL":return[];default:return e}},l=n(a);e.default=l})},function(e,t,n){var o,r,a;!function(n,l){r=[t],o=l,a="function"==typeof o?o.apply(t,r):o,!(void 0!==a&&(e.exports=a))}(this,function(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n=void 0,o={randomId:function(){return Math.random().toString(36).split(".")[1]},returnFirstDefined:function(){for(var e=void 0,t=void 0,n=arguments.length,o=Array(n),r=0;r"+n+"":"",r="\n "+o+"\n \n \n "+t+"\n
\n ";a.default.error(r,{position:"top-right",timeout:3e3,html:!0,effect:"scale"})};t.notice=l},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var i=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:this.props,n=t.headerText,o=t.children;switch(t.filter.type){case m.default.FILTER_TYPE.TEXT:return f.default.createElement(O.default,i({ref:function(t){return e.textFilter=t}},t.filter,{columnName:n||o,filterHandler:this.handleFilter}));case m.default.FILTER_TYPE.REGEX:return f.default.createElement(T.default,i({ref:function(t){return e.regexFilter=t}},t.filter,{columnName:n||o,filterHandler:this.handleFilter}));case m.default.FILTER_TYPE.SELECT:return f.default.createElement(_.default,i({ref:function(t){return e.selectFilter=t}},t.filter,{columnName:n||o,filterHandler:this.handleFilter}));case m.default.FILTER_TYPE.NUMBER:return f.default.createElement(x.default,i({ref:function(t){return e.numberFilter=t}},t.filter,{columnName:n||o,filterHandler:this.handleFilter}));case m.default.FILTER_TYPE.DATE:return f.default.createElement(E.default,i({ref:function(t){return e.dateFilter=t}},t.filter,{columnName:n||o,filterHandler:this.handleFilter}));case m.default.FILTER_TYPE.CUSTOM:var r=t.filter.getElement(this.handleFilter,t.filter.customFilterParameters);return f.default.cloneElement(r,{ref:function(t){return e.customFilter=t}})}}},{key:"componentDidMount",value:function(){this.headerCol.setAttribute("data-field",this.props.dataField)}},{key:"renderDefaultCaret",value:function(e,t){return e?t?f.default.createElement("span",{className:"order fa fa-sort",style:{margin:"10px 0 10px 5px",color:"#ccc"}}):f.default.createElement("span",{className:"order"},f.default.createElement("span",{className:"dropdown"},f.default.createElement("span",{className:"caret",style:{margin:"10px 0 10px 5px",color:"#ccc"}})),f.default.createElement("span",{className:"dropup"},f.default.createElement("span",{className:"caret",style:{margin:"10px 0",color:"#ccc"}}))):null}},{key:"render",value:function(){var e=this,t=void 0,n=void 0,o=void 0,r=this.props,a=r.headerText,l=r.dataAlign,s=r.dataField,u=r.headerAlign,d=r.headerTitle,c=r.hidden,p=r.sort,y=r.dataSort,m=r.sortIndicator,b=r.children,g=r.caretRender,E=r.className,C=r.isOnlyHead,O=r.version,w=r.sortHeaderColumnClassName,T=r.thStyle,S=i({textAlign:u||l,display:c?"none":null},T),_=v.default.isBootstrap4(O);C||(m&&(t=this.renderDefaultCaret(y,_)),n=p?v.default.renderReactSortCaret(p,_):t,g&&(n=g(p,s))),p&&(o=v.default.isFunction(w)?w(p,s):w);var P=(0,h.default)(v.default.isFunction(E)?E():E,!C&&y?"sort-column":"",o),x={};return d&&("string"!=typeof b||a?x.title=a:x.title=b),f.default.createElement("th",i({ref:function(t){return e.headerCol=t},className:P,style:S,onClick:this.handleColumnClick,rowSpan:this.props.rowSpan,colSpan:this.props.colSpan,"data-is-only-head":this.props.isOnlyHead},x),b,n,f.default.createElement("div",{onClick:function(e){return e.stopPropagation()}},this.props.filter&&!C?this.getFilters():null))}},{key:"cleanFiltered",value:function(){if(this.props.filter)switch(this.props.filter.type){case m.default.FILTER_TYPE.TEXT:this.textFilter.cleanFiltered();break;case m.default.FILTER_TYPE.REGEX:this.regexFilter.cleanFiltered();break;case m.default.FILTER_TYPE.SELECT:this.selectFilter.cleanFiltered();break;case m.default.FILTER_TYPE.NUMBER:this.numberFilter.cleanFiltered();break;case m.default.FILTER_TYPE.DATE:this.dateFilter.cleanFiltered();break;case m.default.FILTER_TYPE.CUSTOM:this.customFilter.cleanFiltered()}}},{key:"applyFilter",value:function(e){if(this.props.filter)switch(this.props.filter.type){case m.default.FILTER_TYPE.TEXT:this.textFilter.applyFilter(e);break;case m.default.FILTER_TYPE.REGEX:this.regexFilter.applyFilter(e);break;case m.default.FILTER_TYPE.SELECT:this.selectFilter.applyFilter(e);break;case m.default.FILTER_TYPE.NUMBER:this.numberFilter.applyFilter(e);break;case m.default.FILTER_TYPE.DATE:this.dateFilter.applyFilter(e)}}}]),t}(u.Component),k=[];for(var N in m.default.FILTER_TYPE)k.push(m.default.FILTER_TYPE[N]);R.propTypes={dataField:c.default.string,dataAlign:c.default.string,headerAlign:c.default.string,headerTitle:c.default.bool,headerText:c.default.string,dataSort:c.default.bool,onSort:c.default.func,dataFormat:c.default.func,csvFormat:c.default.func,csvHeader:c.default.string,csvFieldType:c.default.oneOf([m.default.CSV_STRING_TYPE,m.default.CSV_NUMBER_TYPE]),isKey:c.default.bool,editable:c.default.any,hidden:c.default.bool,hiddenOnInsert:c.default.bool,searchable:c.default.bool,className:c.default.oneOfType([c.default.string,c.default.func]),width:c.default.string,sortFunc:c.default.func,sortFuncExtraData:c.default.any,sortHeaderColumnClassName:c.default.any,columnClassName:c.default.any,editColumnClassName:c.default.any,invalidEditColumnClassName:c.default.any,columnTitle:c.default.oneOfType([c.default.bool,c.default.func,c.default.string]),filterFormatted:c.default.bool,filterValue:c.default.func,sort:c.default.string,caretRender:c.default.func,formatExtraData:c.default.any,csvFormatExtraData:c.default.any,filter:c.default.shape({type:c.default.oneOf(k),delay:c.default.number,options:c.default.oneOfType([c.default.object,c.default.arrayOf(c.default.number)]),numberComparators:c.default.arrayOf(c.default.string),emitter:c.default.object,placeholder:c.default.string,getElement:c.default.func,customFilterParameters:c.default.object,condition:c.default.oneOf([m.default.FILTER_COND_EQ,m.default.FILTER_COND_LIKE])}),sortIndicator:c.default.bool,export:c.default.bool,expandable:c.default.bool,tdAttr:c.default.object,editTdAttr:c.default.object,tdStyle:c.default.oneOfType([c.default.func,c.default.object]),thStyle:c.default.object,keyValidator:c.default.bool,defaultASC:c.default.bool},R.defaultProps={dataAlign:"left",headerAlign:void 0,headerTitle:!0,dataSort:!1,dataFormat:void 0,csvFormat:void 0,csvHeader:void 0,csvFieldType:m.default.CSV_STRING_TYPE,isKey:!1,editable:!0,onSort:void 0,hidden:!1,hiddenOnInsert:!1,searchable:!0,className:"",columnTitle:!1,width:null,sortFunc:void 0,columnClassName:"",editColumnClassName:"",invalidEditColumnClassName:"",filterFormatted:!1,filterValue:void 0,sort:void 0,formatExtraData:void 0,sortFuncExtraData:void 0,filter:void 0,sortIndicator:!0,expandable:!0,tdAttr:void 0,editTdAttr:void 0,tdStyle:void 0,thStyle:void 0,keyValidator:!1,defaultASC:!1},t.default=R},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;t1?t-1:0),o=1;o2?n-2:0),r=2;r=0)&&r(e,!n)}function l(e){return[].slice.call(e.querySelectorAll("*"),0).filter(a)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=l;/*!
+!function(){"use strict";function n(){for(var e=[],t=0;t2&&void 0!==arguments[2]?arguments[2]:{},o=arguments[3],r=null,l=null,i=this.isBootstrap4(o),s=this.isSelectRowDefined(t.mode),u=i?"38px":"30px";if(s){var f={width:t.columnWidth||u,minWidth:t.columnWidth||u};t.hideSelectColumn||(r=a.default.createElement("col",{key:"select-col",style:f}))}if(n.expandColumnVisible){var c={width:n.columnWidth||u,minWidth:n.columnWidth||u};l=a.default.createElement("col",{key:"expand-col",style:c})}var d=e.map(function(e,t){var n={display:e.hidden?"none":null};if(e.width){var o=isNaN(e.width)?e.width:e.width+"px";n.width=o,n.minWidth=o}return a.default.createElement("col",{style:n,key:t})});return a.default.createElement("colgroup",null,n.expandColumnVisible&&n.expandColumnBeforeSelectColumn&&l,r,n.expandColumnVisible&&!n.expandColumnBeforeSelectColumn&&l,d)}}},function(e,t){function n(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function r(e){if(f===setTimeout)return setTimeout(e,0);if((f===n||!f)&&setTimeout)return f=setTimeout,setTimeout(e,0);try{return f(e,0)}catch(t){try{return f.call(null,e,0)}catch(t){return f.call(this,e,0)}}}function a(e){if(c===clearTimeout)return clearTimeout(e);if((c===o||!c)&&clearTimeout)return c=clearTimeout,clearTimeout(e);try{return c(e)}catch(t){try{return c.call(null,e)}catch(t){return c.call(this,e)}}}function l(){y&&p&&(y=!1,p.length?h=p.concat(h):m=-1,h.length&&i())}function i(){if(!y){var e=r(l);y=!0;for(var t=h.length;t;){for(p=h,h=[];++m1)for(var n=1;n0&&void 0!==arguments[0]?arguments[0]:[],t=arguments[1];switch(t.type){case"INSERT":return o(e,t);case"REMOVE":return r(e,t);case"REMOVEALL":return[];default:return e}},l=n(a);e.default=l})},function(e,t,n){var o,r,a;!function(n,l){r=[t],o=l,a="function"==typeof o?o.apply(t,r):o,!(void 0!==a&&(e.exports=a))}(this,function(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n=void 0,o={randomId:function(){return Math.random().toString(36).split(".")[1]},returnFirstDefined:function(){for(var e=void 0,t=void 0,n=arguments.length,o=Array(n),r=0;r"+n+"":"",r="\n "+o+"\n \n \n "+t+"\n
\n ";a.default.error(r,{position:"top-right",timeout:3e3,html:!0,effect:"scale"})};t.notice=l},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var i=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:this.props,n=t.headerText,o=t.children;switch(t.filter.type){case m.default.FILTER_TYPE.TEXT:return f.default.createElement(O.default,i({ref:function(t){return e.textFilter=t}},t.filter,{columnName:n||o,filterHandler:this.handleFilter}));case m.default.FILTER_TYPE.REGEX:return f.default.createElement(S.default,i({ref:function(t){return e.regexFilter=t}},t.filter,{columnName:n||o,filterHandler:this.handleFilter}));case m.default.FILTER_TYPE.SELECT:return f.default.createElement(_.default,i({ref:function(t){return e.selectFilter=t}},t.filter,{columnName:n||o,filterHandler:this.handleFilter}));case m.default.FILTER_TYPE.NUMBER:return f.default.createElement(x.default,i({ref:function(t){return e.numberFilter=t}},t.filter,{columnName:n||o,filterHandler:this.handleFilter}));case m.default.FILTER_TYPE.DATE:return f.default.createElement(E.default,i({ref:function(t){return e.dateFilter=t}},t.filter,{columnName:n||o,filterHandler:this.handleFilter}));case m.default.FILTER_TYPE.CUSTOM:var r=t.filter.getElement(this.handleFilter,t.filter.customFilterParameters);return f.default.cloneElement(r,{ref:function(t){return e.customFilter=t}})}}},{key:"componentDidMount",value:function(){this.headerCol.setAttribute("data-field",this.props.dataField)}},{key:"renderDefaultCaret",value:function(e,t){return e?t?f.default.createElement("span",{className:"order fa fa-sort",style:{margin:"10px 0 10px 5px",color:"#ccc"}}):f.default.createElement("span",{className:"order"},f.default.createElement("span",{className:"dropdown"},f.default.createElement("span",{className:"caret",style:{margin:"10px 0 10px 5px",color:"#ccc"}})),f.default.createElement("span",{className:"dropup"},f.default.createElement("span",{className:"caret",style:{margin:"10px 0",color:"#ccc"}}))):null}},{key:"render",value:function(){var e=this,t=void 0,n=void 0,o=void 0,r=this.props,a=r.headerText,l=r.dataAlign,s=r.dataField,u=r.headerAlign,c=r.headerTitle,d=r.hidden,p=r.sort,y=r.dataSort,m=r.sortIndicator,b=r.children,g=r.caretRender,E=r.className,C=r.isOnlyHead,O=r.version,w=r.sortHeaderColumnClassName,S=r.thStyle,T=i({textAlign:u||l,display:d?"none":null},S),_=v.default.isBootstrap4(O);C||(m&&(t=this.renderDefaultCaret(y,_)),n=p?v.default.renderReactSortCaret(p,_):t,g&&(n=g(p,s))),p&&(o=v.default.isFunction(w)?w(p,s):w);var P=(0,h.default)(v.default.isFunction(E)?E():E,!C&&y?"sort-column":"",o),x={};return c&&("string"!=typeof b||a?x.title=a:x.title=b),f.default.createElement("th",i({ref:function(t){return e.headerCol=t},className:P,style:T,onClick:this.handleColumnClick,rowSpan:this.props.rowSpan,colSpan:this.props.colSpan,"data-is-only-head":this.props.isOnlyHead},x),b,n,f.default.createElement("div",{onClick:function(e){return e.stopPropagation()}},this.props.filter&&!C?this.getFilters():null))}},{key:"cleanFiltered",value:function(){if(this.props.filter)switch(this.props.filter.type){case m.default.FILTER_TYPE.TEXT:this.textFilter.cleanFiltered();break;case m.default.FILTER_TYPE.REGEX:this.regexFilter.cleanFiltered();break;case m.default.FILTER_TYPE.SELECT:this.selectFilter.cleanFiltered();break;case m.default.FILTER_TYPE.NUMBER:this.numberFilter.cleanFiltered();break;case m.default.FILTER_TYPE.DATE:this.dateFilter.cleanFiltered();break;case m.default.FILTER_TYPE.CUSTOM:this.customFilter.cleanFiltered()}}},{key:"applyFilter",value:function(e){if(this.props.filter)switch(this.props.filter.type){case m.default.FILTER_TYPE.TEXT:this.textFilter.applyFilter(e);break;case m.default.FILTER_TYPE.REGEX:this.regexFilter.applyFilter(e);break;case m.default.FILTER_TYPE.SELECT:this.selectFilter.applyFilter(e);break;case m.default.FILTER_TYPE.NUMBER:this.numberFilter.applyFilter(e);break;case m.default.FILTER_TYPE.DATE:this.dateFilter.applyFilter(e)}}}]),t}(u.Component),k=[];for(var N in m.default.FILTER_TYPE)k.push(m.default.FILTER_TYPE[N]);R.propTypes={dataField:d.default.string,dataAlign:d.default.string,headerAlign:d.default.string,headerTitle:d.default.bool,headerText:d.default.string,dataSort:d.default.bool,onSort:d.default.func,dataFormat:d.default.func,csvFormat:d.default.func,csvHeader:d.default.string,csvFieldType:d.default.oneOf([m.default.CSV_STRING_TYPE,m.default.CSV_NUMBER_TYPE]),isKey:d.default.bool,editable:d.default.any,hidden:d.default.bool,hiddenOnInsert:d.default.bool,searchable:d.default.bool,className:d.default.oneOfType([d.default.string,d.default.func]),width:d.default.string,sortFunc:d.default.func,sortFuncExtraData:d.default.any,sortHeaderColumnClassName:d.default.any,columnClassName:d.default.any,editColumnClassName:d.default.any,invalidEditColumnClassName:d.default.any,columnTitle:d.default.oneOfType([d.default.bool,d.default.func,d.default.string]),filterFormatted:d.default.bool,filterValue:d.default.func,sort:d.default.string,caretRender:d.default.func,formatExtraData:d.default.any,csvFormatExtraData:d.default.any,filter:d.default.shape({type:d.default.oneOf(k),delay:d.default.number,options:d.default.oneOfType([d.default.object,d.default.arrayOf(d.default.number)]),numberComparators:d.default.arrayOf(d.default.string),emitter:d.default.object,placeholder:d.default.string,getElement:d.default.func,customFilterParameters:d.default.object,condition:d.default.oneOf([m.default.FILTER_COND_EQ,m.default.FILTER_COND_LIKE])}),sortIndicator:d.default.bool,export:d.default.bool,expandable:d.default.bool,tdAttr:d.default.object,editTdAttr:d.default.object,tdStyle:d.default.oneOfType([d.default.func,d.default.object]),thStyle:d.default.object,keyValidator:d.default.bool,defaultASC:d.default.bool},R.defaultProps={dataAlign:"left",headerAlign:void 0,headerTitle:!0,dataSort:!1,dataFormat:void 0,csvFormat:void 0,csvHeader:void 0,csvFieldType:m.default.CSV_STRING_TYPE,isKey:!1,editable:!0,onSort:void 0,hidden:!1,hiddenOnInsert:!1,searchable:!0,className:"",columnTitle:!1,width:null,sortFunc:void 0,columnClassName:"",editColumnClassName:"",invalidEditColumnClassName:"",filterFormatted:!1,filterValue:void 0,sort:void 0,formatExtraData:void 0,sortFuncExtraData:void 0,filter:void 0,sortIndicator:!0,expandable:!0,tdAttr:void 0,editTdAttr:void 0,tdStyle:void 0,thStyle:void 0,keyValidator:!1,defaultASC:!1},t.default=R},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;t=0)&&r(e,!n)}function l(e){return[].slice.call(e.querySelectorAll("*"),0).filter(a)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=l;/*!
* Adapted from jQuery UI core
*
* http://jqueryui.com
@@ -15,11 +15,11 @@ s||f||!e.field)return null;var b=n[l]?u.default.createElement("span",{className:
*
* http://api.jqueryui.com/category/ui-core/
*/
-var i=/input|select|textarea|button|object/;e.exports=t.default},function(e,t,n){var o,r,a;!function(l,i){r=[t,n(1),n(7),n(2),n(12),n(11),n(71)],o=i,a="function"==typeof o?o.apply(t,r):o,!(void 0!==a&&(e.exports=a))}(this,function(e,t,n,o,r,a,l){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function s(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function f(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(e,"__esModule",{value:!0});var d=i(t),c=i(n),p=i(o),h=i(r),y=i(a),m=i(l),b="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},v=function(){function e(e,t){for(var n=0;no&&(o=Number(e.props.row))}),d.default.Children.map(n,function(e,n){if(null===e||void 0===e)return null;var r=e.props.row?Number(e.props.row):0,a=e.props.rowSpan?Number(e.props.rowSpan):1;if(a+r===o+1){var l=t.getColumnDescription(e);return l.index=n,l}})}},{key:"getColumnDescription",value:function(e){var t={name:e.props.dataField,align:e.props.dataAlign,sort:e.props.dataSort,format:e.props.dataFormat,formatExtraData:e.props.formatExtraData,filterFormatted:e.props.filterFormatted,filterValue:e.props.filterValue,editable:e.props.editable,customEditor:e.props.customEditor,hidden:e.props.hidden,hiddenOnInsert:e.props.hiddenOnInsert,searchable:e.props.searchable,className:e.props.columnClassName,editClassName:e.props.editColumnClassName,invalidEditColumnClassName:e.props.invalidEditColumnClassName,columnTitle:e.props.columnTitle,width:e.props.width,text:e.props.headerText||e.props.children,sortFunc:e.props.sortFunc,sortFuncExtraData:e.props.sortFuncExtraData,export:e.props.export,expandable:e.props.expandable,attrs:e.props.tdAttr,editAttrs:e.props.editTdAttr,style:e.props.tdStyle};return e.type.name!==C.default.name&&d.default.isValidElement(e.props.children)&&(t=s({},t,this.getColumnDescription(d.default.Children.only(e.props.children)))),t}},{key:"reset",value:function(){var e=this,t=this.props.options.pageStartIndex;this.store.clean(),this.body.setState({currEditCell:null}),this.setState(function(){return{data:e.getTableData(),currPage:D.default.getFirstPage(t),expanding:[],sizePerPage:g.default.SIZE_PER_PAGE_LIST[0],selectedRowKeys:[],reset:!0}})}},{key:"componentWillReceiveProps",value:function(e){this.initTable(e);var t=e.options,n=e.selectRow,o=e.replace;if(o=o||this.props.replace,e.data)if(this.store.setData(e.data.slice()),o)this.reset();else{var r=this.state.currPage;this.props.options.page!==t.page&&(r=t.page);var a=this.state.sizePerPage;if(this.props.options.sizePerPage!==t.sizePerPage&&(a=t.sizePerPage),this.isRemoteDataSource()){var l={sizePerPage:a,reset:!1,currPage:r},i=e.data.slice();if(e.pagination&&!this.allowRemote(g.default.REMOTE_PAGE)&&(i=this.store.page(r,a).get()),this.store.isOnFilter)this.store.searchText&&this.handleSearch(this.store.searchText),this.store.filterObj&&this.handleFilterData(this.store.filterObj),l.currPage=D.default.getFirstPage(e.options.pageStartIndex);else{if(this.allowRemote(g.default.REMOTE_SORT)){var s=this.props.options,u=t.sortName,f=t.sortOrder;s.sortName===u&&s.sortOrder===f||this.store.setSortInfo(f,t.sortName)}else i=this.store.sort().get();l.data=i}this.setState(function(){return l})}else{r>Math.ceil(e.data.length/a)&&(r=1);var d=this.store.getSortInfo(),c=t.sortName,p=t.sortOrder;c&&p?(this.store.setSortInfo(p,c),this.store.sort()):d.length>0&&this.store.sort();var h=this.store.page(r,a).get();this.setState(function(){return{data:h,currPage:r,sizePerPage:a,reset:!1}}),this.store.isSearching&&t.afterSearch&&t.afterSearch(this.store.searchText,this.store.getDataIgnoringPagination()),this.store.isFiltering&&t.afterColumnFilter&&t.afterColumnFilter(this.store.filterObj,this.store.getDataIgnoringPagination())}if(this.props.options.expanding!==t.expanding&&this.setState(function(){return{expanding:t.expanding||[]}}),n&&n.selected){var y=n.selected.slice();this.store.setSelectedRowKey(y),this.setState(function(){return{selectedRowKeys:y,reset:!1}})}}}},{key:"componentDidMount",value:function(){this._adjustTable(),window.addEventListener("resize",this._adjustTable),this.body.container.addEventListener("scroll",this._scrollHeader),this.props.footer&&this.body.container.addEventListener("scroll",this._scrollFooter),this.props.scrollTop&&this._scrollTop()}},{key:"componentWillUnmount",value:function(){window.removeEventListener("resize",this._adjustTable),this.body&&this.body.container&&(this.body.container.removeEventListener("scroll",this._scrollHeader),this.props.footer&&this.body.container.removeEventListener("scroll",this._scrollFooter)),this.filter&&this.filter.removeAllListeners("onFilterChange")}},{key:"componentDidUpdate",value:function(){this._adjustTable(),this.props.options.afterTableComplete&&this.props.options.afterTableComplete()}},{key:"isRemoteDataSource",value:function(e){var t=e||this.props,n=t.remote;return n===!0||D.default.isFunction(n)}},{key:"allowRemote",value:function(e,t){var n=t||this.props,o=n.remote;if("function"==typeof o){var r=o(g.default.REMOTE);return r[e]}return o}},{key:"render",value:function(){var e=this,t={height:this.props.height,maxHeight:this.props.maxHeight},n=this.getColumnsDescription(this.props),o=this.store.getSortInfo(),r=this.renderPagination(),a=this.renderToolBar(),l=this.renderTableFilter(n),i=this.isSelectAll(),u=this.props.expandColumnOptions;"undefined"==typeof u.expandColumnBeforeSelectColumn&&(u.expandColumnBeforeSelectColumn=!0);var f=D.default.renderColGroup(n,this.props.selectRow,u,this.props.version),c=this.renderTableFooter(this.props.footerData,this.state.data,n,f),p=this.props.options.sortIndicator;"undefined"==typeof this.props.options.sortIndicator&&(p=!0);var h=this.props.options.paginationPosition,m=void 0===h?g.default.PAGINATION_POS_BOTTOM:h,v=m!==g.default.PAGINATION_POS_BOTTOM,E=m!==g.default.PAGINATION_POS_TOP,C=s({},this.props.selectRow);this.props.cellEdit&&this.props.cellEdit.mode!==g.default.CELL_EDIT_NONE&&(C.clickToSelect=!1);var O=this.props.options.toolbarPosition,T=void 0===O?g.default.TOOLBAR_POS_TOP:O,S=T!==g.default.TOOLBAR_POS_BOTTOM,_=T!==g.default.TOOLBAR_POS_TOP,x=this.props.options.hideRowOnExpand,R=void 0!==x&&x;return d.default.createElement("div",{className:(0,y.default)("react-bs-table-container",this.props.className,this.props.containerClass),style:this.props.containerStyle},S?a:null,v?r:null,d.default.createElement("div",{ref:function(t){return e.table=t},className:(0,y.default)("react-bs-table",{"react-bs-table-bordered":this.props.bordered},this.props.tableContainerClass),style:s({},t,this.props.tableStyle),onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave},d.default.createElement(w.default,{ref:function(t){return e.header=t},version:this.props.version,colGroups:f,headerContainerClass:this.props.headerContainerClass,tableHeaderClass:this.props.tableHeaderClass,style:this.props.headerStyle,rowSelectType:this.props.selectRow.mode,customComponent:this.props.selectRow.customComponent,hideSelectColumn:this.props.selectRow.hideSelectColumn,sortList:o,sortIndicator:p,onSort:this.handleSort,onSelectAllRow:this.handleSelectAllRow,bordered:this.props.bordered,condensed:this.props.condensed,isFiltered:!!this.filter,isSelectAll:i,reset:this.state.reset,expandColumnVisible:u.expandColumnVisible,expandColumnComponent:u.expandColumnComponent,expandedColumnHeaderComponent:u.expandedColumnHeaderComponent,noAnyExpand:0===this.state.expanding.length,expandAll:this.props.options.expandAll,toggleExpandAllChilds:this.toggleExpandAllChilds,expandColumnBeforeSelectColumn:u.expandColumnBeforeSelectColumn},this.props.children),d.default.createElement(P.default,{ref:function(t){return e.body=t},bodyContainerClass:this.props.bodyContainerClass,tableBodyClass:this.props.tableBodyClass,style:s({},t,this.props.bodyStyle),data:this.state.data,version:this.props.version,expandComponent:this.props.expandComponent,expandableRow:this.props.expandableRow,expandRowBgColor:this.props.options.expandRowBgColor,expandBy:this.props.options.expandBy||g.default.EXPAND_BY_ROW,expandBodyClass:this.props.options.expandBodyClass,expandParentClass:this.props.options.expandParentClass,columns:n,trClassName:this.props.trClassName,trStyle:this.props.trStyle,striped:this.props.striped,bordered:this.props.bordered,hover:this.props.hover,keyField:this.store.getKeyField(),condensed:this.props.condensed,selectRow:C,expandColumnOptions:this.props.expandColumnOptions,cellEdit:this.props.cellEdit,selectedRowKeys:this.state.selectedRowKeys,onRowClick:this.handleRowClick,onRowDoubleClick:this.handleRowDoubleClick,onRowMouseOver:this.handleRowMouseOver,onRowMouseOut:this.handleRowMouseOut,onSelectRow:this.handleSelectRow,noDataText:this.props.options.noDataText,withoutNoDataText:this.props.options.withoutNoDataText,expanding:this.state.expanding,onExpand:this.handleExpandRow,onlyOneExpanding:this.props.options.onlyOneExpanding,beforeShowError:this.props.options.beforeShowError,keyBoardNav:this.props.keyBoardNav,onNavigateCell:this.handleNavigateCell,x:this.state.x,y:this.state.y,withoutTabIndex:this.props.withoutTabIndex,hideRowOnExpand:R,onEditCell:this.handleEditCell}),c),l,E?r:null,_?a:null,this.props.renderAlert?d.default.createElement(b.default,{stack:{limit:3}}):null)}},{key:"isSelectAll",value:function(){if(this.store.isEmpty())return!1;var e=this.props.selectRow,t=e.unselectable,n=e.onlyUnselectVisible,o=this.store.getKeyField(),r=n?this.store.get().map(function(e){return e[o]}):this.store.getAllRowkey(),a=this.store.getSelectedRowKeys();if(n&&(a=a.filter(function(e){return e!==r})),0===a.length)return!1;var l=0,i=0,s=0;return a.forEach(function(e){r.indexOf(e)!==-1?l++:i++,t&&t.indexOf(e)!==-1&&s++}),i!==a.length&&(l===r.length||!(t&&l<=s&&s===t.length)&&"indeterminate")}},{key:"cleanSelected",value:function(){this.store.setSelectedRowKey([]),this.setState(function(){return{selectedRowKeys:[],reset:!1}})}},{key:"cleanSort",value:function(){this.store.cleanSortInfo(),this.setState(function(){return{reset:!1}})}},{key:"toggleExpandAllChilds",value:function(){var e=this,t=this.state.expanding;t.length>0?this.setState(function(){return{expanding:[],reset:!1}}):this.setState(function(){return{expanding:e.store.getAllRowkey(),reset:!1}})}},{key:"editCell",value:function(e,t,n){var o=this.props.options.onCellEdit,r=this.props.cellEdit.afterSaveCell,a=this.getColumnsDescription(this.props),l=a[n].name,i={rowIndex:t,colIndex:n};if(o&&(e=o(this.state.data[t],l,e)),this.allowRemote(g.default.REMOTE_CELL_EDIT))return void(r&&r(this.state.data[t],l,e,i));var s=this.store.edit(e,t,l).get();this.setState(function(){return{data:s,reset:!1}}),r&&r(this.state.data[t],l,e,i)}},{key:"handleAddRowAtBegin",value:function(e){try{this.store.addAtBegin(e)}catch(e){return e}this._handleAfterAddingRow(e,!0)}},{key:"getSizePerPage",value:function(){return this.state.sizePerPage}},{key:"getCurrentPage",value:function(){return this.state.currPage}},{key:"getTableDataIgnorePaging",value:function(){return this.store.getCurrentDisplayData()}},{key:"deleteRow",value:function(e){var t=this,n=this.store.getRowByKey(e),o=this.props.options,r=o.onDeleteRow,a=o.afterDeleteRow,l=o.pageStartIndex;if(r&&r(e,n),this.store.setSelectedRowKey([]),this.allowRemote(g.default.REMOTE_DROP_ROW))return void(a&&a(e,n));this.store.remove(e);var i=void 0;if(this.props.pagination){var s=this.state.sizePerPage,u=Math.ceil(this.store.getDataNum()/s),f=this.state.currPage;f>u&&(f=u),i=this.store.page(D.default.getNormalizedPage(l,f),s).get(),this.setState(function(){return{data:i,selectedRowKeys:t.store.getSelectedRowKeys(),currPage:f,reset:!1}})}else i=this.store.get(),this.setState(function(){return{data:i,reset:!1,selectedRowKeys:t.store.getSelectedRowKeys()}});a&&a(e,n)}},{key:"renderPagination",value:function(){var e=this;if(this.props.pagination){var t=void 0;t=this.allowRemote(g.default.REMOTE_PAGE)?this.props.fetchInfo.dataTotalSize:this.store.getDataNum();var n=this.props.options,o=void 0===n.withFirstAndLast||n.withFirstAndLast;return Math.ceil(t/this.state.sizePerPage)<=1&&this.props.ignoreSinglePage?null:d.default.createElement("div",{className:"react-bs-table-pagination"},d.default.createElement(R.default,{ref:function(t){return e.pagination=t},version:this.props.version,withFirstAndLast:o,alwaysShowAllBtns:n.alwaysShowAllBtns,currPage:this.state.currPage,changePage:this.handlePaginationData,sizePerPage:this.state.sizePerPage,sizePerPageList:n.sizePerPageList||g.default.SIZE_PER_PAGE_LIST,pageStartIndex:n.pageStartIndex,paginationShowsTotal:n.paginationShowsTotal,paginationSize:n.paginationSize||g.default.PAGINATION_SIZE,dataSize:t,onSizePerPageList:n.onSizePerPageList,prePage:n.prePage||g.default.PRE_PAGE,nextPage:n.nextPage||g.default.NEXT_PAGE,firstPage:n.firstPage||g.default.FIRST_PAGE,lastPage:n.lastPage||g.default.LAST_PAGE,prePageTitle:n.prePageTitle||g.default.PRE_PAGE_TITLE,nextPageTitle:n.nextPageTitle||g.default.NEXT_PAGE_TITLE,firstPageTitle:n.firstPageTitle||g.default.FIRST_PAGE_TITLE,lastPageTitle:n.lastPageTitle||g.default.LAST_PAGE_TITLE,hideSizePerPage:n.hideSizePerPage,sizePerPageDropDown:n.sizePerPageDropDown,hidePageListOnlyOnePage:n.hidePageListOnlyOnePage,paginationPanel:n.paginationPanel,keepSizePerPageState:n.keepSizePerPageState,open:!1}))}return null}},{key:"renderToolBar",value:function(){var e=this,t=this.props,n=t.exportCSV,o=t.selectRow,r=t.insertRow,a=t.deleteRow,l=t.search,i=t.children,s=t.keyField,u=o&&o.showOnlySelected,f="undefined"==typeof this.props.options.printToolBar||this.props.options.printToolBar;if(u||r||a||l||n||this.props.options.searchPanel||this.props.options.btnGroup||this.props.options.toolBar){var c=void 0;return c=Array.isArray(i)?i.filter(function(e){return null!=e}).map(function(e,t){if(e){var n=e.props,o=n.isKey||s===n.dataField;return{isKey:o,name:n.headerText||n.children,field:n.dataField,hiddenOnInsert:n.hiddenOnInsert,keyValidator:n.keyValidator,customInsertEditor:n.customInsertEditor,autoValue:n.autoValue||!1,editable:n.editable&&D.default.isFunction("function"===n.editable)?n.editable():n.editable,format:!!n.dataFormat&&function(e){return n.dataFormat(e,null,n.formatExtraData,t).replace(/<.*?>/g,"")}}}}):[{name:i.props.headerText||i.props.children,field:i.props.dataField,editable:i.props.editable,customInsertEditor:i.props.customInsertEditor,hiddenOnInsert:i.props.hiddenOnInsert,keyValidator:i.props.keyValidator}],d.default.createElement("div",{className:"react-bs-table-tool-bar "+(f?"":"hidden-print")},d.default.createElement(N.default,{ref:function(t){return e.toolbar=t},version:this.props.version,defaultSearch:this.props.options.defaultSearch,clearSearch:this.props.options.clearSearch,searchPosition:this.props.options.searchPosition,searchDelayTime:this.props.options.searchDelayTime,enableInsert:r,enableDelete:a,enableSearch:l,enableExportCSV:n,enableShowOnlySelected:u,columns:c,searchPlaceholder:this.props.searchPlaceholder,exportCSVText:this.props.options.exportCSVText,insertText:this.props.options.insertText,deleteText:this.props.options.deleteText,saveText:this.props.options.saveText,closeText:this.props.options.closeText,ignoreEditable:this.props.options.ignoreEditable,onAddRow:this.handleAddRow,onDropRow:this.handleDropRow,onSearch:this.handleSearch,onExportCSV:this.handleExportCSV,onShowOnlySelected:this.handleShowOnlySelected,insertModalHeader:this.props.options.insertModalHeader,insertModalFooter:this.props.options.insertModalFooter,insertModalBody:this.props.options.insertModalBody,insertModal:this.props.options.insertModal,insertBtn:this.props.options.insertBtn,deleteBtn:this.props.options.deleteBtn,showSelectedOnlyBtn:this.props.options.showSelectedOnlyBtn,exportCSVBtn:this.props.options.exportCSVBtn,clearSearchBtn:this.props.options.clearSearchBtn,searchField:this.props.options.searchField,searchPanel:this.props.options.searchPanel,btnGroup:this.props.options.btnGroup,toolBar:this.props.options.toolBar,reset:this.state.reset,isValidKey:this.store.isValidKey,insertFailIndicator:this.props.options.insertFailIndicator||g.default.INSERT_FAIL_INDICATOR}))}return null}},{key:"renderTableFilter",value:function(e){return this.props.columnFilter?d.default.createElement(F.default,{columns:e,rowSelectType:this.props.selectRow.mode,onFilter:this.handleFilterData}):null}},{key:"renderTableFooter",value:function(e,t,n,o){var r=this;if(this.props.footer){var a=!0,l=this.props.selectRow.mode,i=D.default.isSelectRowDefined(l);return i&&(a=this.props.selectRow.hideSelectColumn),d.default.createElement(S.default,{ref:function(e){return r.footer=e},columns:n,colGroups:o,footerFormatterReturnData:t,tableFooterClass:this.props.tableFooterClass,style:this.props.headerStyle,hideSelectColumn:a,expandColumnVisible:this.props.expandColumnOptions.expandColumnVisible,bordered:this.props.bordered,condensed:this.props.condensed,isFiltered:!!this.filter,showStickyColumn:this.props.showStickyColumn},e)}return null}},{key:"_adjustTable",value:function(){this._adjustHeight(),this.props.printable||this._adjustHeaderWidth()}},{key:"_adjustHeaderWidth",value:function(){var e=this.header.getHeaderColGrouop(),t=this.body.tbody,n=this.body.getHeaderColGrouop(),o=t.childNodes[0],r=t.parentNode.getBoundingClientRect().height>t.parentNode.parentNode.getBoundingClientRect().height,a=r?D.default.getScrollBarWidth():0;if(o&&this.store.getDataNum()){if(r||this.isVerticalScroll!==r)for(var l=o.childNodes,i=0;i=d){u++;var p=a?e.pagination.getLastPage():-1;if(!(u<=p))return;e.handlePaginationData(u,e.state.sizePerPage),s=0}else if(s<0){if(u--,!(u>0))return;e.handlePaginationData(u,e.state.sizePerPage),s=d-1}else if(i>=c){if(s+1===d){u++;var h=a?e.pagination.getLastPage():-1;if(!(u<=h))return;e.handlePaginationData(u,e.state.sizePerPage),s=0}else s++;i=r?1:0}else if(i<0)if(i=c-1,0===s){if(u--,!(u>0))return;e.handlePaginationData(u,e.state.sizePerPage),s=e.state.sizePerPage-1}else s--;e.setState(function(){return{x:i,y:s,currPage:u,reset:!1}})},this.handleRowClick=function(t,n,o,r){var a=e.props,l=a.options,s=a.keyBoardNav;if(l.onRowClick&&l.onRowClick(t,o,n,r),s){var u="object"===("undefined"==typeof s?"undefined":i(s))?s:{},f=u.clickToNav;f=f!==!1||f,f&&e.setState(function(){return{x:o,y:n,reset:!1}})}},this.handleRowDoubleClick=function(t,n){e.props.options.onRowDoubleClick&&e.props.options.onRowDoubleClick(t,n)},this.handleSelectAllRow=function(t){var n=t.currentTarget.checked,o=e.store.getKeyField(),r=e.props.selectRow,a=r.onSelectAll,l=r.unselectable,i=r.selected,s=r.onlyUnselectVisible,u=s?e.state.selectedRowKeys:[],f=!0,d=e.store.get();if(n||s||(d=e.store.getRowByKey(e.state.selectedRowKeys)),l&&l.length>0&&(d=n?d.filter(function(e){return l.indexOf(e[o])===-1||i&&i.indexOf(e[o])!==-1}):d.filter(function(e){return l.indexOf(e[o])===-1})),a&&(f=e.props.selectRow.onSelectAll(n,d)),"undefined"==typeof f||f!==!1){if(n)if(Array.isArray(f))u=f;else{var c=d.map(function(e){return e[o]});u=s?u.concat(c):c}else if(l&&i)u=i.filter(function(e){return l.indexOf(e)>-1});else if(s){var p=d.map(function(e){return e[o]});u=u.filter(function(e){return p.indexOf(e)===-1})}e.store.setSelectedRowKey(u),e.setState(function(){return{selectedRowKeys:u,reset:!1}})}},this.handleShowOnlySelected=function(){e.store.ignoreNonSelected();var t=e.props.options.pageStartIndex,n=void 0;n=e.props.pagination?e.store.page(D.default.getNormalizedPage(t),e.state.sizePerPage).get():e.store.get(),e.setState(function(){return{data:n,reset:!1,currPage:D.default.getFirstPage(t)}})},this.handleSelectRow=function(t,n,o,r){var a=!0,l=e.store.getSelectedRowKeys(),i=t[e.store.getKeyField()],s=e.props.selectRow;s.onSelect&&(a=s.onSelect(t,n,o,r)),"undefined"!=typeof a&&a===!1||(s.mode===g.default.ROW_SELECT_SINGLE?l=n?[i]:[]:n?l.push(i):l=l.filter(function(e){return i!==e}),e.store.setSelectedRowKey(l),e.setState(function(){return{selectedRowKeys:l,reset:!1}}))},this.handleEditCell=function(t,n,o){var r=e.props.cellEdit.beforeSaveCell,a=e.getColumnsDescription(e.props),l=a[o].name,i=function(){
-e.setState(function(){return{data:e.store.get(),reset:!1}})};if(r){var s=function(r){e.body.cancelEditCell(),r||void 0===r?e.editCell(t,n,o):i()},u={rowIndex:n,colIndex:o},f=r(e.state.data[n],l,t,s,u);if(f===!1&&"undefined"!=typeof f)return i();if(f===g.default.AWAIT_BEFORE_CELL_EDIT)return f}e.editCell(t,n,o)},this.handleAddRow=function(t){var n=!1,o=e.props.options.onAddRow,r=function(t){return n?void e.toolbar.afterHandleSaveBtnClick(t):t},a=function(n){if("undefined"!=typeof n&&""!==n)return r(n);if(e.allowRemote(g.default.REMOTE_INSERT_ROW))return e.props.options.afterInsertRow&&e.props.options.afterInsertRow(t),r();try{e.store.add(t)}catch(e){return r(e.message)}return e._handleAfterAddingRow(t,!1),r()};if(o){var l=e.store.getColInfos(),i=o(t,l,a);return""!==i&&i!==!1?i:"undefined"==typeof i?a():(n=!0,!n)}return a()},this.getPageByRowKey=function(t){var n=e.state.sizePerPage,o=e.store.getCurrentDisplayData(),r=e.store.getKeyField(),a=o.findIndex(function(e){return e[r]===t});return a>-1?parseInt(a/n,10)+1:a},this.handleDropRow=function(t){var n=t?t:e.store.getSelectedRowKeys();n&&n.length>0&&(e.props.options.handleConfirmDeleteRow?e.props.options.handleConfirmDeleteRow(function(){e.deleteRow(n)},n):confirm("Are you sure you want to delete?")&&e.deleteRow(n))},this.handleFilterData=function(t){var n=e.props,o=n.autoCollapse.filter,r=n.options,a=r.onFilterChange,l=r.pageStartIndex;if(a){var i=e.store.getColInfos();a(t,i)}if(e.setState(function(){var e={currPage:D.default.getFirstPage(l),reset:!1};return o&&(e.expanding=[]),e}),e.allowRemote(g.default.REMOTE_FILTER))return void(e.props.options.afterColumnFilter&&e.props.options.afterColumnFilter(t,e.store.getDataIgnoringPagination()));e.store.filter(t);var s=e.store.getSortInfo();s.length>0&&e.store.sort();var u=void 0;if(e.props.pagination){var f=e.state.sizePerPage;u=e.store.page(D.default.getNormalizedPage(l),f).get()}else u=e.store.get();e.props.options.afterColumnFilter&&e.props.options.afterColumnFilter(t,e.store.getDataIgnoringPagination()),e.setState(function(){return{data:u,reset:!1}})},this.handleExportCSV=function(){var t={},n=e.props.csvFileName,o=e.props.options,r=o.onExportToCSV,a=o.exportCSVSeparator,l=o.noAutoBOM,i=o.excludeCSVHeader;t=r?r():e.store.getDataIgnoringPagination();var s=a||g.default.DEFAULT_CSV_SEPARATOR,u=[];e.props.children.filter(function(e){return null!=e}).map(function(e){(e.props.export===!0||"undefined"==typeof e.props.export&&e.props.hidden===!1)&&u.push({field:e.props.dataField,type:e.props.csvFieldType,format:e.props.csvFormat,extraData:e.props.csvFormatExtraData,header:e.props.csvHeader||e.props.dataField,row:Number(e.props.row)||0,rowSpan:Number(e.props.rowSpan)||1,colSpan:Number(e.props.colSpan)||1})}),D.default.isFunction(n)&&(n=n()),(0,M.default)(t,u,n,s,l,i)},this.handleSearch=function(t){e.toolbar&&e.toolbar.setSearchInput(t);var n=e.props.autoCollapse.search,o=e.props.options,r=o.onSearchChange,a=o.pageStartIndex;if(r){var l=e.store.getColInfos();r(t,l,e.props.multiColumnSearch)}if(e.setState(function(){var e={currPage:D.default.getFirstPage(a),reset:!1};return n&&(e.expanding=[]),e}),e.allowRemote(g.default.REMOTE_SEARCH))return void(e.props.options.afterSearch&&e.props.options.afterSearch(t,e.store.getDataIgnoringPagination()));e.store.search(t);var i=e.store.getSortInfo();i.length>0&&e.store.sort();var s=void 0;if(e.props.pagination){var u=e.state.sizePerPage;s=e.store.page(D.default.getNormalizedPage(a),u).get()}else s=e.store.get();e.props.options.afterSearch&&e.props.options.afterSearch(t,e.store.getDataIgnoringPagination()),e.setState(function(){return{data:s,reset:!1}})},this._scrollTop=function(){var t=e.props.scrollTop;t===g.default.SCROLL_TOP?e.body.container.scrollTop=0:t===g.default.SCROLL_BOTTOM?e.body.container.scrollTop=e.body.container.scrollHeight:"number"!=typeof t||isNaN(t)||(e.body.container.scrollTop=t)},this._scrollHeader=function(t){e.header.container.scrollLeft=t.currentTarget.scrollLeft},this._scrollFooter=function(t){e.props.footer&&(e.footer.container.scrollLeft=t.currentTarget.scrollLeft)}};V.propTypes={keyField:p.default.string,height:p.default.oneOfType([p.default.string,p.default.number]),maxHeight:p.default.oneOfType([p.default.string,p.default.number]),data:p.default.oneOfType([p.default.array,p.default.object]),version:p.default.string,remote:p.default.oneOfType([p.default.bool,p.default.func]),replace:p.default.oneOfType([p.default.bool,p.default.func]),scrollTop:p.default.oneOfType([p.default.string,p.default.number]),striped:p.default.bool,bordered:p.default.bool,hover:p.default.bool,condensed:p.default.bool,pagination:p.default.bool,printable:p.default.bool,withoutTabIndex:p.default.bool,keyBoardNav:p.default.oneOfType([p.default.bool,p.default.object]),searchPlaceholder:p.default.string,selectRow:p.default.shape({mode:p.default.oneOf([g.default.ROW_SELECT_NONE,g.default.ROW_SELECT_SINGLE,g.default.ROW_SELECT_MULTI]),customComponent:p.default.func,bgColor:p.default.oneOfType([p.default.string,p.default.func]),selected:p.default.array,onSelect:p.default.func,onSelectAll:p.default.func,clickToSelect:p.default.bool,hideSelectColumn:p.default.bool,clickToSelectAndEditCell:p.default.bool,clickToExpand:p.default.bool,showOnlySelected:p.default.bool,unselectable:p.default.array,columnWidth:p.default.oneOfType([p.default.number,p.default.string]),onlyUnselectVisible:p.default.bool}),cellEdit:p.default.shape({mode:p.default.string,blurToSave:p.default.bool,blurToEscape:p.default.bool,beforeSaveCell:p.default.func,afterSaveCell:p.default.func,nonEditableRows:p.default.func}),insertRow:p.default.bool,deleteRow:p.default.bool,search:p.default.bool,multiColumnSearch:p.default.bool,strictSearch:p.default.bool,columnFilter:p.default.bool,trClassName:p.default.any,trStyle:p.default.any,tableStyle:p.default.object,containerStyle:p.default.object,headerStyle:p.default.object,bodyStyle:p.default.object,containerClass:p.default.string,tableContainerClass:p.default.string,headerContainerClass:p.default.string,bodyContainerClass:p.default.string,tableHeaderClass:p.default.string,tableBodyClass:p.default.string,tableFooterClass:p.default.string,options:p.default.shape({clearSearch:p.default.bool,sortName:p.default.oneOfType([p.default.string,p.default.array]),sortOrder:p.default.oneOfType([p.default.string,p.default.array]),defaultSortName:p.default.oneOfType([p.default.string,p.default.array]),defaultSortOrder:p.default.oneOfType([p.default.string,p.default.array]),sortIndicator:p.default.bool,afterTableComplete:p.default.func,afterDeleteRow:p.default.func,afterInsertRow:p.default.func,afterSearch:p.default.func,afterColumnFilter:p.default.func,onRowClick:p.default.func,onRowDoubleClick:p.default.func,page:p.default.number,pageStartIndex:p.default.number,paginationShowsTotal:p.default.oneOfType([p.default.bool,p.default.func]),sizePerPageList:p.default.array,sizePerPage:p.default.number,paginationSize:p.default.number,paginationPosition:p.default.oneOf([g.default.PAGINATION_POS_TOP,g.default.PAGINATION_POS_BOTTOM,g.default.PAGINATION_POS_BOTH]),toolbarPosition:p.default.oneOf([g.default.TOOLBAR_POS_TOP,g.default.TOOLBAR_POS_BOTTOM,g.default.TOOLBAR_POS_BOTH]),hideSizePerPage:p.default.bool,hidePageListOnlyOnePage:p.default.bool,alwaysShowAllBtns:p.default.bool,withFirstAndLast:p.default.bool,keepSizePerPageState:p.default.bool,onSortChange:p.default.func,onPageChange:p.default.func,onSizePerPageList:p.default.func,onFilterChange:p.default.func,onSearchChange:p.default.func,onAddRow:p.default.func,onExportToCSV:p.default.func,onCellEdit:p.default.func,noDataText:p.default.oneOfType([p.default.string,p.default.object]),withoutNoDataText:p.default.bool,handleConfirmDeleteRow:p.default.func,prePage:p.default.any,nextPage:p.default.any,firstPage:p.default.any,lastPage:p.default.any,prePageTitle:p.default.string,nextPageTitle:p.default.string,firstPageTitle:p.default.string,lastPageTitle:p.default.string,searchDelayTime:p.default.number,excludeCSVHeader:p.default.bool,exportCSVText:p.default.string,exportCSVSeparator:p.default.string,insertText:p.default.string,deleteText:p.default.string,saveText:p.default.string,closeText:p.default.string,ignoreEditable:p.default.bool,defaultSearch:p.default.string,insertModalHeader:p.default.func,insertModalBody:p.default.func,insertModalFooter:p.default.func,insertModal:p.default.func,insertBtn:p.default.func,deleteBtn:p.default.func,showSelectedOnlyBtn:p.default.func,exportCSVBtn:p.default.func,clearSearchBtn:p.default.func,searchField:p.default.func,searchPanel:p.default.func,btnGroup:p.default.func,toolBar:p.default.func,sizePerPageDropDown:p.default.func,paginationPanel:p.default.func,searchPosition:p.default.string,expandRowBgColor:p.default.string,expandBy:p.default.string,expanding:p.default.array,onExpand:p.default.func,onlyOneExpanding:p.default.bool,expandBodyClass:p.default.oneOfType([p.default.string,p.default.func]),expandParentClass:p.default.oneOfType([p.default.string,p.default.func]),beforeShowError:p.default.func,printToolBar:p.default.bool,insertFailIndicator:p.default.string,noAutoBOM:p.default.bool,expandAll:p.default.bool,hideRowOnExpand:p.default.bool}),fetchInfo:p.default.shape({dataTotalSize:p.default.number}),renderAlert:p.default.bool,exportCSV:p.default.bool,csvFileName:p.default.oneOfType([p.default.string,p.default.func]),ignoreSinglePage:p.default.bool,expandableRow:p.default.func,expandComponent:p.default.func,autoCollapse:p.default.shape({sort:p.default.bool,filter:p.default.bool,search:p.default.bool}),expandColumnOptions:p.default.shape({columnWidth:p.default.oneOfType([p.default.number,p.default.string]),expandColumnVisible:p.default.bool,expandColumnComponent:p.default.func,expandedColumnHeaderComponent:p.default.func,expandColumnBeforeSelectColumn:p.default.bool}),footer:p.default.bool},V.defaultProps={version:"3",replace:!1,scrollTop:void 0,expandComponent:void 0,expandableRow:void 0,expandColumnOptions:{expandColumnVisible:!1,expandColumnComponent:void 0,expandedColumnHeaderComponent:void 0,expandColumnBeforeSelectColumn:!0},height:"100%",maxHeight:void 0,striped:!1,bordered:!0,hover:!1,condensed:!1,pagination:!1,printable:!1,withoutTabIndex:!1,keyBoardNav:!1,searchPlaceholder:void 0,selectRow:{mode:g.default.ROW_SELECT_NONE,bgColor:g.default.ROW_SELECT_BG_COLOR,selected:[],onSelect:void 0,onSelectAll:void 0,clickToSelect:!1,hideSelectColumn:!1,clickToSelectAndEditCell:!1,clickToExpand:!1,showOnlySelected:!1,unselectable:[],customComponent:void 0,onlyUnselectVisible:!1},cellEdit:{mode:g.default.CELL_EDIT_NONE,blurToSave:!1,blurToEscape:!1,beforeSaveCell:void 0,afterSaveCell:void 0,nonEditableRows:void 0},insertRow:!1,deleteRow:!1,search:!1,multiColumnSearch:!1,strictSearch:void 0,multiColumnSort:1,columnFilter:!1,trClassName:"",trStyle:void 0,tableStyle:void 0,containerStyle:void 0,headerStyle:void 0,bodyStyle:void 0,containerClass:null,tableContainerClass:null,headerContainerClass:null,bodyContainerClass:null,tableHeaderClass:null,tableBodyClass:null,tableFooterClass:null,options:{clearSearch:!1,sortName:void 0,sortOrder:void 0,defaultSortName:void 0,defaultSortOrder:void 0,sortIndicator:!0,afterTableComplete:void 0,afterDeleteRow:void 0,afterInsertRow:void 0,afterSearch:void 0,afterColumnFilter:void 0,onRowClick:void 0,onRowDoubleClick:void 0,onMouseLeave:void 0,onMouseEnter:void 0,onRowMouseOut:void 0,onRowMouseOver:void 0,page:void 0,paginationShowsTotal:!1,sizePerPageList:g.default.SIZE_PER_PAGE_LIST,sizePerPage:void 0,paginationSize:g.default.PAGINATION_SIZE,paginationPosition:g.default.PAGINATION_POS_BOTTOM,toolbarPosition:g.default.TOOLBAR_POS_TOP,hideSizePerPage:!1,hidePageListOnlyOnePage:!1,alwaysShowAllBtns:!1,withFirstAndLast:!0,keepSizePerPageState:!1,onSizePerPageList:void 0,noDataText:void 0,withoutNoDataText:!1,handleConfirmDeleteRow:void 0,prePage:g.default.PRE_PAGE,nextPage:g.default.NEXT_PAGE,firstPage:g.default.FIRST_PAGE,lastPage:g.default.LAST_PAGE,prePageTitle:g.default.PRE_PAGE_TITLE,nextPageTitle:g.default.NEXT_PAGE_TITLE,firstPageTitle:g.default.FIRST_PAGE_TITLE,lastPageTitle:g.default.LAST_PAGE_TITLE,pageStartIndex:1,searchDelayTime:void 0,excludeCSVHeader:!1,exportCSVText:g.default.EXPORT_CSV_TEXT,exportCSVSeparator:g.default.DEFAULT_CSV_SEPARATOR,insertText:g.default.INSERT_BTN_TEXT,deleteText:g.default.DELETE_BTN_TEXT,saveText:g.default.SAVE_BTN_TEXT,closeText:g.default.CLOSE_BTN_TEXT,ignoreEditable:!1,defaultSearch:"",insertModalHeader:void 0,insertModalBody:void 0,insertModalFooter:void 0,insertModal:void 0,insertBtn:void 0,deleteBtn:void 0,showSelectedOnlyBtn:void 0,exportCSVBtn:void 0,clearSearchBtn:void 0,searchField:void 0,searchPanel:void 0,btnGroup:void 0,toolBar:void 0,sizePerPageDropDown:void 0,paginationPanel:void 0,searchPosition:"right",expandRowBgColor:void 0,expandBy:g.default.EXPAND_BY_ROW,expanding:[],onExpand:void 0,onlyOneExpanding:!1,expandBodyClass:null,expandParentClass:null,beforeShowError:void 0,printToolBar:!0,insertFailIndicator:g.default.INSERT_FAIL_INDICATOR,noAutoBOM:!0,expandAll:!1,hideRowOnExpand:!1},fetchInfo:{dataTotalSize:0},renderAlert:!0,exportCSV:!1,csvFileName:"spreadsheet.csv",ignoreSinglePage:!1,autoCollapse:{sort:g.default.AUTO_COLLAPSE_WHEN_SORT,filter:g.default.AUTO_COLLAPSE_WHEN_FILTER,search:g.default.AUTO_COLLAPSE_WHEN_SEARCH},footer:!1},t.default=V},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var i=Object.assign||function(e){for(var t=1;t2&&void 0!==arguments[2]?arguments[2]:-1,r=n.props,a=r.columns,l=r.keyField,i=r.expandBy,s=r.expandableRow,u=r.selectRow,f=u.mode,d=u.clickToExpand,c=u.hideSelectColumn,p=r.onlyOneExpanding,h=y.default.isSelectRowDefined(f),m=!(h&&!d);if(o=h&&!c?o-1:o,o=n._isExpandColumnVisible()?o-1:o,s&&m&&(i===b.default.EXPAND_BY_ROW||i===b.default.EXPAND_BY_COL&&o<0||i===b.default.EXPAND_BY_COL&&a[o].expandable)){var v=n.props.expanding,g=n.props.data[t-1][l],E=v.indexOf(g)>-1;E?v=v.filter(function(e){return e!==g}):p?v=[g]:v.push(g),n.props.onExpand(v,g,E,e)}},n.handleEditCell=function(e,t,o,r){var a=n.props.selectRow,l=y.default.isSelectRowDefined(a.mode),i=n._isExpandColumnVisible();if(l&&(t--,a.hideSelectColumn&&t++),i&&t--,e--,"tab"===o){l&&!a.hideSelectColumn&&t++,i&&t++,n.handleCompleteEditCell(r.target.value,e,t-1),t>=n.props.columns.length?n.handleCellKeyDown(r,!0):n.handleCellKeyDown(r);var s=n.nextEditableCell(e,t),u=s.nextRIndex,f=s.nextCIndex;e=u,t=f}var d={currEditCell:{rid:e,cid:t}};if(n.props.selectRow.clickToSelectAndEditCell&&n.props.cellEdit.mode!==b.default.CELL_EDIT_DBCLICK){var c=n.props.selectedRowKeys.indexOf(n.props.data[e][n.props.keyField])!==-1;n.handleSelectRow(e+1,!c,r)}n.setState(function(){return d})},n.nextEditableCell=function(e,t){var o=n.props.keyField,r=e,a=t,l=void 0,i=void 0;do{if(a>=n.props.columns.length&&(r++,a=0),l=n.props.data[r],i=n.props.columns[a],!l)break;var s=i.editable;if(y.default.isFunction(i.editable)&&(s=i.editable(i,l,r,a)),s&&s.readOnly!==!0&&!i.hidden&&o!==i.name)break;a++}while(l);return{nextRIndex:r,nextCIndex:a}},n.handleCompleteEditCell=function(e,t,o){if(null!==e){var r=n.props.onEditCell(e,t,o);r!==b.default.AWAIT_BEFORE_CELL_EDIT&&n.setState(function(){return{currEditCell:null}})}else n.setState(function(){return{currEditCell:null}})},n.cancelEditCell=function(){n.setState(function(){return{currEditCell:null}})},n.handleClickonSelectColumn=function(e,t,o,r){if(e.stopPropagation(),"TD"===e.target.tagName&&(n.props.selectRow.clickToSelect||n.props.selectRow.clickToSelectAndEditCell)){var a=n.props.selectRow.unselectable||[];a.indexOf(r[n.props.keyField])===-1&&(n.handleSelectRow(o+1,t,e),n.handleClickCell(e,o+1))}},n.getHeaderColGrouop=function(){return n.header.childNodes},n.state={currEditCell:null},n}return l(t,e),u(t,[{key:"render",value:function(){var e=this,t=this.props,n=t.cellEdit,o=t.beforeShowError,r=t.x,a=t.y,l=t.keyBoardNav,s=t.trStyle,u=t.version,f={"table-striped":this.props.striped,"table-bordered":this.props.bordered,"table-hover":this.props.hover};this.props.condensed&&(y.default.isBootstrap4(u)?f["table-sm"]=!0:f["table-condensed"]=!0);var c=(0,S.default)("table",f,this.props.tableBodyClass),p=n.nonEditableRows&&n.nonEditableRows()||[],h=this.props.selectRow.unselectable||[],m=y.default.isSelectRowDefined(this.props.selectRow.mode),v=y.default.renderColGroup(this.props.columns,this.props.selectRow,this.props.expandColumnOptions,u),E=this.props.selectRow.mode===b.default.ROW_SELECT_SINGLE?"radio":"checkbox",O=this.props.selectRow.customComponent,T=l===!0||"object"===("undefined"==typeof l?"undefined":i(l)),_="object"===("undefined"==typeof l?"undefined":i(l))?l.customStyleOnEditCell:null,x="object"===("undefined"==typeof l?"undefined":i(l))?l.customStyle:null,R=this.props.expandColumnOptions.expandColumnComponent,k=this.props.columns.filter(function(e){return e&&!e.hidden}).length;m&&!this.props.selectRow.hideSelectColumn&&(k+=1);var N=1;this.props.expandColumnOptions.expandColumnVisible&&(k+=1);var j=this.props.data.map(function(e,t){var l=this.props.columns.filter(function(e){return null!=e}).map(function(l,i){var s=e[l.name],u=t===a&&i===r;if(l.name!==this.props.keyField&&l.editable&&l.editable.readOnly!==!0&&null!==this.state.currEditCell&&this.state.currEditCell.rid===t&&this.state.currEditCell.cid===i&&p.indexOf(e[this.props.keyField])===-1){var f=l.editable,c=!!l.format&&function(n){return l.format(n,e,l.formatExtraData,t).replace(/<.*?>/g,"")};return y.default.isFunction(l.editable)&&(f=l.editable(s,e,t,i)),d.default.createElement(w.default,{completeEdit:this.handleCompleteEditCell,editable:f,attrs:l.editAttrs,customEditor:l.customEditor,format:!!l.format&&c,key:i,blurToSave:n.blurToSave,blurToEscape:n.blurToEscape,onTab:this.handleEditCell,rowIndex:t,colIndex:i,row:e,fieldValue:s,className:l.editClassName,invalidColumnClassName:l.invalidEditColumnClassName,beforeShowError:o,isFocus:u,customStyleWithNav:_})}var h=void 0,m=s&&s.toString(),b=null,v=l.className,g=l.style;return y.default.isFunction(l.className)&&(v=l.className(s,e,t,i)),y.default.isFunction(l.style)&&(g=l.style(s,e,t,i)),"undefined"!=typeof l.format&&(h=l.format(s,e,l.formatExtraData,t),m=d.default.isValidElement(h)?h:d.default.createElement("div",{dangerouslySetInnerHTML:{__html:h}})),y.default.isFunction(l.columnTitle)?b=l.columnTitle(s,e,t,i):"string"==typeof l.columnTitle?b=l.columnTitle:l.columnTitle&&(h?b=h.toString():s&&(b=s.toString())),d.default.createElement(C.default,{key:i,cIndex:i,rIndex:t,dataAlign:l.align,className:v,columnTitle:b,cellEdit:n,hidden:l.hidden,onEdit:this.handleEditCell,width:l.width,onClick:this.handleClickCell,attrs:l.attrs,style:g,tabIndex:N++ +"",isFocus:u,keyBoardNav:T,onKeyDown:this.handleCellKeyDown,customNavStyle:x,row:e,withoutTabIndex:this.props.withoutTabIndex},m)},this),i=e[this.props.keyField],u=h.indexOf(i)!==-1,f=this.props.selectedRowKeys.indexOf(i)!==-1,c=m&&!this.props.selectRow.hideSelectColumn?this.renderSelectRowColumn(f,E,u,O,t,e):null,v=this.renderExpandRowColumn(this.props.expandableRow&&this.props.expandableRow(e),this.props.expanding.indexOf(i)>-1,R,t),S=this.props.expandableRow&&this.props.expandableRow(e),j=S&&this.props.expanding.indexOf(i)>-1,F=this.props.hideRowOnExpand,I=this.props.trClassName;y.default.isFunction(this.props.trClassName)&&(I=this.props.trClassName(e,t)),j&&this.props.expandParentClass&&(I+=y.default.isFunction(this.props.expandParentClass)?" "+this.props.expandParentClass(e,t):" "+this.props.expandParentClass);var A=[d.default.createElement(g.default,{isSelected:f,key:i,className:I,index:t,row:e,selectRow:m?this.props.selectRow:void 0,enableCellEdit:n.mode!==b.default.CELL_EDIT_NONE,onRowClick:this.handleRowClick,onRowDoubleClick:this.handleRowDoubleClick,onRowMouseOver:this.handleRowMouseOver,onRowMouseOut:this.handleRowMouseOut,onSelectRow:this.handleSelectRow,onExpandRow:this.handleClickCell,unselectableRow:u,style:s,hidden:j&&F,dbClickToEdit:n.mode===b.default.CELL_EDIT_DBCLICK},this.props.expandColumnOptions.expandColumnVisible&&this.props.expandColumnOptions.expandColumnBeforeSelectColumn&&v,c,this.props.expandColumnOptions.expandColumnVisible&&!this.props.expandColumnOptions.expandColumnBeforeSelectColumn&&v,l)];if(S){var D=y.default.isFunction(this.props.expandBodyClass)?this.props.expandBodyClass(e,t,j):this.props.expandBodyClass;A.push(d.default.createElement(P.default,{key:i+"-expand",row:e,className:D,bgColor:this.props.expandRowBgColor||this.props.selectRow.bgColor||void 0,hidden:!j,colSpan:k,width:"100%"},this.props.expandComponent(e)))}return A},this);if(0===j.length&&!this.props.withoutNoDataText){var F=this.props.columns.filter(function(e){return!e.hidden}).length+(m&&!this.props.selectRow.hideSelectColumn?1:0)+(this.props.expandColumnOptions.expandColumnVisible?1:0);j=[d.default.createElement(g.default,{key:"##table-empty##",style:s},d.default.createElement("td",{"data-toggle":"collapse",colSpan:F,className:"react-bs-table-no-data"},this.props.noDataText||b.default.NO_DATA_TEXT))]}return d.default.createElement("div",{ref:function(t){return e.container=t},className:(0,S.default)("react-bs-container-body",this.props.bodyContainerClass),style:this.props.style},d.default.createElement("table",{className:c},d.default.cloneElement(v,{ref:function(t){return e.header=t}}),d.default.createElement("tbody",{ref:function(t){return e.tbody=t}},j)))}},{key:"renderSelectRowColumn",value:function(e,t,n){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,r=this,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,l=arguments[5];return d.default.createElement("td",{onClick:function(t){r.handleClickonSelectColumn(t,!e,a,l)},style:{textAlign:"center"}},o?d.default.createElement(o,{type:t,checked:e,disabled:n,rowIndex:a,onChange:function(e){return r.handleSelectRowColumChange(e,a)}}):d.default.createElement("input",{type:t,checked:e,disabled:n,onChange:function(e){return r.handleSelectRowColumChange(e,a)}}))}},{key:"renderExpandRowColumn",value:function(e,t,n){var o=this,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,a=null;
-return a=n?d.default.createElement(n,{isExpandableRow:e,isExpanded:t}):e?t?d.default.createElement("span",{className:"fa fa-minus glyphicon glyphicon-minus"}):d.default.createElement("span",{className:"fa fa-plus glyphicon glyphicon-plus"}):" ",d.default.createElement("td",{className:"react-bs-table-expand-cell",onClick:function(e){return o.handleClickCell(e,r+1)}},a)}},{key:"_isExpandColumnVisible",value:function(){return this.props.expandColumnOptions.expandColumnVisible}}]),t}(f.Component);x.propTypes={version:p.default.string,data:p.default.array,columns:p.default.array,striped:p.default.bool,bordered:p.default.bool,hover:p.default.bool,condensed:p.default.bool,keyField:p.default.string,selectedRowKeys:p.default.array,onRowClick:p.default.func,onRowDoubleClick:p.default.func,onSelectRow:p.default.func,noDataText:p.default.oneOfType([p.default.string,p.default.object]),withoutNoDataText:p.default.bool,style:p.default.object,tableBodyClass:p.default.string,bodyContainerClass:p.default.string,expandableRow:p.default.func,expandComponent:p.default.func,expandRowBgColor:p.default.string,expandBy:p.default.string,expanding:p.default.array,onExpand:p.default.func,expandBodyClass:p.default.oneOfType([p.default.string,p.default.func]),expandParentClass:p.default.oneOfType([p.default.string,p.default.func]),onlyOneExpanding:p.default.bool,beforeShowError:p.default.func,keyBoardNav:p.default.oneOfType([p.default.bool,p.default.object]),x:p.default.number,y:p.default.number,onNavigateCell:p.default.func,withoutTabIndex:p.default.bool,hideRowOnExpand:p.default.bool},t.default=x},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var i=Object.assign||function(e){for(var t=1;t0?o[0].order:void 0}}Object.defineProperty(t,"__esModule",{value:!0});var u=function(){function e(e,t){for(var n=0;nl&&(l=e.row);for(var t=0;t1?"":void 0}).filter(function(e){return"undefined"!=typeof e}).join(n)+"\n"},f=i;f<=l;f++)u(f);return t=t.filter(function(e){return void 0!==e.field}),e.map(function(e){t.map(function(o,a){var l=o.field,i=o.format,u=o.extraData,f=o.type,d="undefined"!=typeof i?i(e[l],e,u):e[l];d=f===s.default.CSV_NUMBER_TYPE?Number(d):'"'+d+'"';var c="undefined"!=typeof d?d:"";r+=c,a+1",">=","<","<=","!="],m=function(e){function t(e){r(this,t);var n=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return n.dateComparators=n.props.dateComparators||y,n.filter=n.filter.bind(n),n.onChangeComparator=n.onChangeComparator.bind(n),n}return l(t,e),s(t,[{key:"setDefaultDate",value:function(){var e="",t=this.props.defaultValue;return t&&t.date&&(e=i(new Date(t.date))),e}},{key:"onChangeComparator",value:function(e){var t=this.inputDate.value,n=e.target.value;""!==t&&(t=new Date(t),this.props.filterHandler({date:t,comparator:n},h.default.FILTER_TYPE.DATE))}},{key:"getComparatorOptions",value:function(){var e=[];e.push(f.default.createElement("option",{key:"-1"}));for(var t=0;t",">=","<","<=","!="],b=function(e){function t(e){r(this,t);var n=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return n.numberComparators=n.props.numberComparators||m,n.timeout=null,n.state={isPlaceholderSelected:void 0===n.props.defaultValue||void 0===n.props.defaultValue.number||n.props.options&&n.props.options.indexOf(n.props.defaultValue.number)===-1},n.onChangeNumber=n.onChangeNumber.bind(n),n.onChangeNumberSet=n.onChangeNumberSet.bind(n),n.onChangeComparator=n.onChangeComparator.bind(n),n}return l(t,e),i(t,[{key:"onChangeNumber",value:function(e){var t=this,n=this.numberFilterComparator.value;if(""!==n){this.timeout&&clearTimeout(this.timeout);var o=e.target.value;this.timeout=setTimeout(function(){t.props.filterHandler({number:o,comparator:n},y.default.FILTER_TYPE.NUMBER)},this.props.delay)}}},{key:"onChangeNumberSet",value:function(e){var t=this.numberFilterComparator.value,n=e.target.value;this.setState(function(){return{isPlaceholderSelected:""===n}}),""!==t&&this.props.filterHandler({number:n,comparator:t},y.default.FILTER_TYPE.NUMBER)}},{key:"onChangeComparator",value:function(e){var t=this.numberFilter.value,n=e.target.value;""!==t&&this.props.filterHandler({number:t,comparator:n},y.default.FILTER_TYPE.NUMBER)}},{key:"cleanFiltered",value:function(){var e=this.props.defaultValue?this.props.defaultValue.number:"",t=this.props.defaultValue?this.props.defaultValue.comparator:"";this.setState(function(){return{isPlaceholderSelected:""===e}}),this.numberFilterComparator.value=t,this.numberFilter.value=e,this.props.filterHandler({number:e,comparator:t},y.default.FILTER_TYPE.NUMBER)}},{key:"applyFilter",value:function(e){var t=e.number,n=e.comparator;this.setState(function(){return{isPlaceholderSelected:""===t}}),this.numberFilterComparator.value=n,this.numberFilter.value=t,this.props.filterHandler({number:t,comparator:n},y.default.FILTER_TYPE.NUMBER)}},{key:"getComparatorOptions",value:function(){var e=[],t=this.props.withoutEmptyComparatorOption;t||e.push(u.default.createElement("option",{key:"-1"}));for(var n=0;nn.lastPage?n.lastPage:a+1:e===i?n.lastPage:e===s?o:parseInt(e,10),f&&n.closeDropDown(),e!==a&&n.props.changePage(e,u)},n.changeSizePerPage=function(e){var t="string"==typeof e?parseInt(e,10):e,o=n.props.currPage;t!==n.props.sizePerPage&&(n.totalPages=Math.ceil(n.props.dataSize/t),n.lastPage=n.props.pageStartIndex+n.totalPages-1,o>n.lastPage&&(o=n.lastPage),n.props.changePage(o,t),n.props.onSizePerPageList&&n.props.onSizePerPageList(t)),n.closeDropDown()},n.toggleDropDown=function(){n.setState(function(){return{open:!n.state.open}})},n.closeDropDown=function(){n.setState(function(){return{open:!1}})},n.state={open:n.props.open},n}return l(t,e),s(t,[{key:"componentWillReceiveProps",value:function(){var e=this.props.keepSizePerPageState;e||this.closeDropDown()}},{key:"render",value:function(){var e=this.props,t=e.currPage,n=e.dataSize,o=e.sizePerPage,r=e.sizePerPageList,a=e.paginationShowsTotal,l=e.pageStartIndex,i=e.paginationPanel,s=e.hidePageListOnlyOnePage;this.totalPages=Math.ceil(n/o),this.lastPage=this.props.pageStartIndex+this.totalPages-1;var u=this.makePage(O.default.isFunction(i)),d=this.makeDropDown(),c=Math.abs(E.default.PAGE_START_INDEX-l),p=(t-l)*o;p=0===n?0:p+1;var h=Math.min(o*(t+c)-1,n);h>=n&&h--;var y=a?f.default.createElement("span",null,"Showing rows ",p," to ",h+1," of ",n):null;O.default.isFunction(a)&&(y=a(p,h+1,n));var m=i&&i({currPage:t,sizePerPage:o,sizePerPageList:r,pageStartIndex:l,totalPages:this.totalPages,changePage:this.changePage,toggleDropDown:this.toggleDropDown,changeSizePerPage:this.changeSizePerPage,components:{totalText:y,sizePerPageDropdown:d,pageList:u}}),b=s&&1===this.totalPages?"none":"block";return f.default.createElement("div",{className:"row",style:{marginTop:15}},m||[f.default.createElement("div",{key:"paging-left",className:"col-md-6 col-xs-6 col-sm-6 col-lg-6"},y,r.length>1?d:null),f.default.createElement("div",{key:"paging-right",style:{display:b},className:"col-md-6 col-xs-6 col-sm-6 col-lg-6"},u)])}},{key:"makeDropDown",value:function(){var e=this,t=void 0,n=void 0,o="",r=this.props,a=r.sizePerPageDropDown,l=r.hideSizePerPage,s=r.sizePerPage,u=r.sizePerPageList;if(a){if(t=a({open:this.state.open,hideSizePerPage:l,currSizePerPage:String(s),sizePerPageList:u,toggleDropDown:this.toggleDropDown,changeSizePerPage:this.changeSizePerPage,onBlur:this.closeDropDown}),t.type.name!==v.default.name)return t;n=t.props}if(n||!t){var d=O.default.isBootstrap4(this.props.version),c=u.map(function(t){var n=t.text||t,r=t.value||t;return s===r&&(o=n),d?f.default.createElement("a",{href:"#",tabIndex:"-1",key:n,className:"dropdown-item",onMouseDown:function(t){t.preventDefault(),e.changeSizePerPage(r)}},n):f.default.createElement("li",{key:n,role:"presentation",className:"dropdown-item"},f.default.createElement("a",{role:"menuitem",tabIndex:"-1",href:"#","data-page":r,onMouseDown:function(t){t.preventDefault(),e.changeSizePerPage(r)}},n))});t=f.default.createElement(v.default,i({open:this.state.open,hidden:l,currSizePerPage:String(o),options:c,onClick:this.toggleDropDown,onBlur:this.closeDropDown,isBootstrap4:d},n))}return t}},{key:"makePage",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],n=this.getPages(),o=function(e,t){var n=t.currPage,o=t.pageStartIndex,r=t.firstPage,a=t.prePage;return n===o&&(e===r||e===a)},r=function(t,n){var o=n.currPage,r=n.nextPage,a=n.lastPage;return o===e.lastPage&&(t===r||t===a)},a=n.filter(function(e){return!!this.props.alwaysShowAllBtns||!o(e,this.props)&&!r(e,this.props)},this).map(function(e,t){var n=e===this.props.currPage,a=!(!o(e,this.props)&&!r(e,this.props)),l=e+"",i=e;return e===this.props.nextPage?(l=this.props.nextPageTitle,i=this.props.currPage+1):e===this.props.prePage?(l=this.props.prePageTitle,i=this.props.currPage-1):e===this.props.firstPage?(l=this.props.firstPageTitle,i=this.props.pageStartIndex):e===this.props.lastPage&&(l=this.props.lastPageTitle,i=this.getLastPage()),f.default.createElement(m.default,{key:t,title:l,changePage:this.changePage,active:n,disable:a,pageNumber:i},e)},this),l=(0,h.default)(t?null:"react-bootstrap-table-page-btns-ul","pagination");return f.default.createElement("ul",{className:l},a)}},{key:"getLastPage",value:function(){return this.lastPage}},{key:"getPages",value:function(){var e=void 0,t=this.totalPages;if(t<=0)return[];var n=Math.max(this.props.currPage-Math.floor(this.props.paginationSize/2),this.props.pageStartIndex);t=n+this.props.paginationSize-1,t>this.lastPage&&(t=this.lastPage,n=t-this.props.paginationSize+1),e=n!==this.props.pageStartIndex&&this.totalPages>this.props.paginationSize&&this.props.withFirstAndLast?[this.props.firstPage,this.props.prePage]:this.totalPages>1||this.props.alwaysShowAllBtns?[this.props.prePage]:[];for(var o=n;o<=t;o++)o>=this.props.pageStartIndex&&e.push(o);return t<=this.lastPage&&e.length>1&&e.push(this.props.nextPage),t!==this.lastPage&&this.props.withFirstAndLast&&e.push(this.props.lastPage),e}}]),t}(u.Component);w.propTypes={currPage:c.default.number,sizePerPage:c.default.number,dataSize:c.default.number,changePage:c.default.func,sizePerPageList:c.default.array,paginationShowsTotal:c.default.oneOfType([c.default.bool,c.default.func]),paginationSize:c.default.number,onSizePerPageList:c.default.func,prePage:c.default.any,nextPage:c.default.any,firstPage:c.default.any,lastPage:c.default.any,pageStartIndex:c.default.number,hideSizePerPage:c.default.bool,alwaysShowAllBtns:c.default.bool,withFirstAndLast:c.default.bool,sizePerPageDropDown:c.default.func,paginationPanel:c.default.func,prePageTitle:c.default.string,nextPageTitle:c.default.string,firstPageTitle:c.default.string,lastPageTitle:c.default.string,hidePageListOnlyOnePage:c.default.bool,keepSizePerPageState:c.default.bool},w.defaultProps={sizePerPage:E.default.SIZE_PER_PAGE,pageStartIndex:E.default.PAGE_START_INDEX},t.default=w},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0}),t.TableDataStore=void 0;var a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l=function(){function e(e,t){for(var n=0;n1){for(var o=this.sortList.length-1,r=!1;o>=0;o--)if(this.sortList[o].sortField===t){r=!0;break}r&&(o>0?this.sortList=this.sortList.slice(0,o):this.sortList=this.sortList.slice(1)),this.sortList.unshift(n),this.sortList=this.sortList.slice(0,this.multiColumnSort)}else this.sortList=[n]}}},{key:"cleanSortInfo",value:function(){this.sortList=[]}},{key:"setSelectedRowKey",value:function(e){this.selected=e}},{key:"getRowByKey",value:function(e){var t=this,n=[];if(!e||0===e.length)return n;for(var o=function(o){var r=t.data[o];e.indexOf(r[t.keyField])>-1&&(e=e.filter(function(e){return e!==r[t.keyField]}),n.push(r))},r=0;r0&&this.sort()}},{key:"ignoreNonSelected",value:function(){var e=this;this.showOnlySelected=!this.showOnlySelected,this.showOnlySelected?(this.isOnFilter=!0,this.filteredData=this.data.filter(function(t){var n=e.selected.find(function(n){return t[e.keyField]===n});return"undefined"!=typeof n})):this.isOnFilter=!1}},{key:"sort",value:function(){var e=this.getCurrentDisplayData();return e=this._sort(e),this}},{key:"page",value:function(e,t){return this.pageObj.end=e*t-1,this.pageObj.start=this.pageObj.end-(t-1),this}},{key:"edit",value:function(e,t,n){var o=this.getCurrentDisplayData(),r=void 0;return this.enablePagination?(o[this.pageObj.start+t][n]=e,r=o[this.pageObj.start+t][this.keyField]):(o[t][n]=e,r=o[t][this.keyField]),this.isOnFilter&&(this.data.forEach(function(t){t[this.keyField]===r&&(t[n]=e)},this),null!==this.filterObj&&this.filter(this.filterObj),null!==this.searchText&&this.search(this.searchText)),this}},{key:"addAtBegin",value:function(e){if(!e[this.keyField]||""===e[this.keyField].toString())throw new Error(this.keyField+" can't be empty value.");var t=this.getCurrentDisplayData();t.forEach(function(t){if(t[this.keyField].toString()===e[this.keyField].toString())throw new Error(this.keyField+" "+e[this.keyField]+" already exists")},this),t.unshift(e),this.isOnFilter&&this.data.unshift(e),this._refresh(!1)}},{key:"add",value:function(e){var t=this.isValidKey(e[this.keyField]);if(t)throw new Error(t);var n=this.getCurrentDisplayData();n.push(e),this.isOnFilter&&this.data.push(e),this._refresh(!1)}},{key:"remove",value:function(e){var t=this,n=this.getCurrentDisplayData(),o=n.filter(function(n){return e.indexOf(n[t.keyField])===-1});this.isOnFilter?(this.data=this.data.filter(function(n){return e.indexOf(n[t.keyField])===-1}),this.filteredData=o):this.data=o}},{key:"filter",value:function(e){if(0===Object.keys(e).length)this.filteredData=null,this.isOnFilter=!1,this.filterObj=null,this.searchText&&this._search(this.data);else{var t=this.data;this.filterObj=e,this.searchText&&(this._search(t),t=this.filteredData),this._filter(t)}}},{key:"filterNumber",value:function(e,t,n){var o=!0;switch(n){case"=":e!=t&&(o=!1);break;case">":e<=t&&(o=!1);break;case">=":e=t&&(o=!1);break;case"<=":e>t&&(o=!1);break;case"!=":e==t&&(o=!1);break;default:console.error("Number comparator provided is not supported")}return o}},{key:"filterDate",value:function e(t,n,o){if(!t)return!1;var e=n.getDate(),r=n.getMonth(),l=n.getFullYear();"object"!==("undefined"==typeof t?"undefined":a(t))&&(t=new Date(t));var i=t.getDate(),s=t.getMonth(),u=t.getFullYear(),f=!0;switch(o){case"=":e===i&&r===s&&l===u||(f=!1);break;case">":t<=n&&(f=!1);break;case">=":u=n&&(f=!1);break;case"<=":u>l?f=!1:u===l&&s>r?f=!1:u===l&&s===r&&i>e&&(f=!1);break;case"!=":e===i&&r===s&&l===u&&(f=!1);break;default:console.error("Date comparator provided is not supported")}return f}},{key:"filterRegex",value:function(e,t){try{return new RegExp(t,"i").test(e)}catch(e){return!0}}},{key:"filterCustom",value:function(e,t,n,o){return null!==n&&"object"===("undefined"==typeof n?"undefined":a(n))?n.callback(e,n.callbackParameters):this.filterText(e,t,o)}},{key:"filterText",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments[1],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:s.default.FILTER_COND_LIKE;return e=null===e?"":e.toString(),t=t.toString(),n===s.default.FILTER_COND_EQ?e===t:(e=e.toLowerCase(),t=t.toLowerCase(),!(e.indexOf(t)===-1))}},{key:"filterArray",value:function(e,t){return t.indexOf(e)>-1}},{key:"search",value:function(e){if(""===e.trim())this.filteredData=null,this.isOnFilter=!1,this.searchText=null,this.filterObj&&this._filter(this.data);else{var t=this.data;this.searchText=e,this.filterObj&&(this._filter(t),t=this.filteredData),this._search(t)}}},{key:"_filter",value:function(e){var t=this,n=this.filterObj;this.filteredData=e.filter(function(e,o){var r=!0,l=void 0;for(var i in n){var u=e[i];switch(null!==u&&void 0!==u||(u=""),n[i].type){case s.default.FILTER_TYPE.NUMBER:l=n[i].value.number;break;case s.default.FILTER_TYPE.CUSTOM:l="object"===a(n[i].value)?void 0:"string"==typeof n[i].value?n[i].value.toLowerCase():n[i].value;break;case s.default.FILTER_TYPE.DATE:l=n[i].value.date;break;case s.default.FILTER_TYPE.REGEX:l=n[i].value;break;case s.default.FILTER_TYPE.ARRAY:if(l=n[i].value,!Array.isArray(l))throw new Error("Value must be an Array");break;default:l=n[i].value,void 0===l&&(l=n[i])}var f=void 0,d=void 0,c=void 0,p=void 0;switch(t.colInfos[i]&&(f=t.colInfos[i].format,d=t.colInfos[i].filterFormatted,c=t.colInfos[i].formatExtraData,p=t.colInfos[i].filterValue,d&&f?u=f(e[i],e,c,o):p&&(u=p(e[i],e))),n[i].type){case s.default.FILTER_TYPE.NUMBER:r=t.filterNumber(u,l,n[i].value.comparator);break;case s.default.FILTER_TYPE.DATE:r=t.filterDate(u,l,n[i].value.comparator);break;case s.default.FILTER_TYPE.REGEX:
-r=t.filterRegex(u,l);break;case s.default.FILTER_TYPE.CUSTOM:var h=n[i].props?n[i].props.cond:s.default.FILTER_COND_LIKE;r=t.filterCustom(u,l,n[i].value,h);break;case s.default.FILTER_TYPE.ARRAY:r=t.filterArray(u,l);break;default:n[i].type===s.default.FILTER_TYPE.SELECT&&d&&d&&f&&(l=f(l,e,c,o));var y=n[i].props?n[i].props.cond:s.default.FILTER_COND_LIKE;r=t.filterText(u,l,y)}if(!r)break}return r}),this.isOnFilter=!0}},{key:"_search",value:function(e){var t=this,n=void 0;n=this.multiColumnSearch||!this.strictSearch?this.searchText.trim().toLowerCase().split(/\s+/):[this.searchText.toLowerCase()];var o=n.length,r=o>1,a=r&&!this.strictSearch&&this.multiColumnSearch,l=r&&!this.strictSearch&&!this.multiColumnSearch;this.filteredData=e.filter(function(e,i){for(var s=Object.keys(e),u=r?n.slice():n,f=0,d=s.length;fu.length&&(u=n.slice());for(var g=u.length-1;g>-1;g--)if(v.indexOf(u[g])!==-1){if(a||1===u.length)return!0;u.splice(g,1)}else if(!t.multiColumnSearch)break}}}return!1}),this.isOnFilter=!0}},{key:"_sort",value:function(e){var t=this;return 0===this.sortList.length||"undefined"==typeof this.sortList[0]?e:(e.sort(function(e,n){for(var o=0,r=0;rc?-1:dc?1:0}if(0!==o)return o}return o}),e)}},{key:"getDataIgnoringPagination",value:function(){return this.getCurrentDisplayData()}},{key:"get",value:function(){var e=this.getCurrentDisplayData();if(0===e.length)return e;var t="function"==typeof this.remote?this.remote(s.default.REMOTE)[s.default.REMOTE_PAGE]:this.remote;if(t||!this.enablePagination)return e;for(var n=[],o=this.pageObj.start;o<=this.pageObj.end&&(n.push(e[o]),o+1!==e.length);o++);return n}},{key:"getKeyField",value:function(){return this.keyField}},{key:"getDataNum",value:function(){return this.getCurrentDisplayData().length}},{key:"isChangedPage",value:function(){return!(!this.pageObj.start||!this.pageObj.end)}},{key:"isEmpty",value:function(){return 0===this.data.length||null===this.data||void 0===this.data}},{key:"getAllRowkey",value:function(){var e=this;return this.data.map(function(t){return t[e.keyField]})}}]),e}();t.TableDataStore=u},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){var n={};for(var o in e)t.indexOf(o)>=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;t0&&(n=f.default.cloneElement(n,p))}else if(n&&n.type.name!==h.default.name){var y=n.props.className;"undefined"!=typeof y&&y.indexOf("modal-header")!==-1||(n=f.default.createElement("div",{className:"modal-header"},n))}if(o&&o.type.name===m.default.name){var b={};o.props.onModalClose||(b.onModalClose=d),o.props.onSave||(b.onSave=this.handleSave),Object.keys(b).length>0&&(o=f.default.cloneElement(o,b))}else if(o&&o.type.name!==m.default.name){var E=o.props.className;"undefined"!=typeof E&&E.indexOf("modal-footer")!==-1||(o=f.default.createElement("div",{className:"modal-footer"},o))}return f.default.createElement("div",{className:"modal-content "+g},n||f.default.createElement(h.default,{version:this.props.version,className:"react-bs-table-inser-modal-header",onModalClose:d}),r||f.default.createElement(v.default,i({ref:function(t){return e.body=t}},c)),o||f.default.createElement(m.default,{className:"react-bs-table-inser-modal-footer",onModalClose:d,onSave:this.handleSave}))}}]),t}(u.Component);t.default=E,E.propTypes={version:c.default.string.isRequired,columns:c.default.array.isRequired,validateState:c.default.object.isRequired,ignoreEditable:c.default.bool,headerComponent:c.default.func,bodyComponent:c.default.func,footerComponent:c.default.func,onModalClose:c.default.func,onSave:c.default.func},E.defaultProps={}},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){var n=[],o=!0,r=!1,a=void 0;try{for(var l,i=e[Symbol.iterator]();!(o=(l=i.next()).done)&&(n.push(l.value),!t||n.length!==t);o=!0);}catch(e){r=!0,a=e}finally{try{!o&&i.return&&i.return()}finally{if(r)throw a}}return n}return function(t,n){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u=function(){function e(e,t){for(var n=0;n0&&this._events[e].length>r&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),"function"==typeof console.trace&&console.trace())),this},n.prototype.on=n.prototype.addListener,n.prototype.once=function(e,t){function n(){this.removeListener(e,n),r||(r=!0,t.apply(this,arguments))}if(!o(t))throw TypeError("listener must be a function");var r=!1;return n.listener=t,this.on(e,n),this},n.prototype.removeListener=function(e,t){var n,r,l,i;if(!o(t))throw TypeError("listener must be a function");if(!this._events||!this._events[e])return this;if(n=this._events[e],l=n.length,r=-1,n===t||o(n.listener)&&n.listener===t)delete this._events[e],this._events.removeListener&&this.emit("removeListener",e,t);else if(a(n)){for(i=l;i-- >0;)if(n[i]===t||n[i].listener&&n[i].listener===t){r=i;break}if(r<0)return this;1===n.length?(n.length=0,delete this._events[e]):n.splice(r,1),this._events.removeListener&&this.emit("removeListener",e,t)}return this},n.prototype.removeAllListeners=function(e){var t,n;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[e]&&delete this._events[e],this;if(0===arguments.length){for(t in this._events)"removeListener"!==t&&this.removeAllListeners(t);return this.removeAllListeners("removeListener"),this._events={},this}if(n=this._events[e],o(n))this.removeListener(e,n);else if(n)for(;n.length;)this.removeListener(e,n[n.length-1]);return delete this._events[e],this},n.prototype.listeners=function(e){var t;return t=this._events&&this._events[e]?o(this._events[e])?[this._events[e]]:this._events[e].slice():[]},n.prototype.listenerCount=function(e){if(this._events){var t=this._events[e];if(o(t))return 1;if(t)return t.length}return 0},n.listenerCount=function(e,t){return e.listenerCount(t)}},function(e,t,n){var o;/*!
+var i=/input|select|textarea|button|object/;e.exports=t.default},function(e,t,n){var o,r,a;!function(l,i){r=[t,n(1),n(7),n(2),n(11),n(10),n(73)],o=i,a="function"==typeof o?o.apply(t,r):o,!(void 0!==a&&(e.exports=a))}(this,function(e,t,n,o,r,a,l){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function s(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function f(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(e,"__esModule",{value:!0});var c=i(t),d=i(n),p=i(o),h=i(r),y=i(a),m=i(l),b="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},v=function(){function e(e,t){for(var n=0;no&&(o=Number(e.props.row))}),c.default.Children.map(n,function(e,n){if(null===e||void 0===e)return null;var r=e.props.row?Number(e.props.row):0,a=e.props.rowSpan?Number(e.props.rowSpan):1;if(a+r===o+1){var l=t.getColumnDescription(e);return l.index=n,l}})}},{key:"getColumnDescription",value:function(e){var t={name:e.props.dataField,align:e.props.dataAlign,sort:e.props.dataSort,format:e.props.dataFormat,formatExtraData:e.props.formatExtraData,filterFormatted:e.props.filterFormatted,filterValue:e.props.filterValue,editable:e.props.editable,customEditor:e.props.customEditor,hidden:e.props.hidden,hiddenOnInsert:e.props.hiddenOnInsert,searchable:e.props.searchable,className:e.props.columnClassName,editClassName:e.props.editColumnClassName,invalidEditColumnClassName:e.props.invalidEditColumnClassName,columnTitle:e.props.columnTitle,width:e.props.width,text:e.props.headerText||e.props.children,sortFunc:e.props.sortFunc,sortFuncExtraData:e.props.sortFuncExtraData,export:e.props.export,expandable:e.props.expandable,attrs:e.props.tdAttr,editAttrs:e.props.editTdAttr,style:e.props.tdStyle};return e.type.name!==C.default.name&&c.default.isValidElement(e.props.children)&&(t=s({},t,this.getColumnDescription(c.default.Children.only(e.props.children)))),t}},{key:"reset",value:function(){var e=this,t=this.props.options.pageStartIndex;this.store.clean(),this.body.setState({currEditCell:null}),this.setState(function(){return{data:e.getTableData(),currPage:D.default.getFirstPage(t),expanding:[],sizePerPage:g.default.SIZE_PER_PAGE_LIST[0],selectedRowKeys:[],reset:!0}})}},{key:"UNSAFE_componentWillReceiveProps",value:function(e){this.initTable(e);var t=e.options,n=e.selectRow,o=e.replace;if(o=o||this.props.replace,e.data)if(this.store.setData(e.data.slice()),o)this.reset();else{var r=this.state.currPage;this.props.options.page!==t.page&&(r=t.page);var a=this.state.sizePerPage;if(this.props.options.sizePerPage!==t.sizePerPage&&(a=t.sizePerPage),this.isRemoteDataSource()){var l={sizePerPage:a,reset:!1,currPage:r},i=e.data.slice();if(e.pagination&&!this.allowRemote(g.default.REMOTE_PAGE)&&(i=this.store.page(r,a).get()),this.store.isOnFilter)this.store.searchText&&this.handleSearch(this.store.searchText),this.store.filterObj&&this.handleFilterData(this.store.filterObj),l.currPage=D.default.getFirstPage(e.options.pageStartIndex);else{if(this.allowRemote(g.default.REMOTE_SORT)){var s=this.props.options,u=t.sortName,f=t.sortOrder;s.sortName===u&&s.sortOrder===f||this.store.setSortInfo(f,t.sortName)}else i=this.store.sort().get();l.data=i}this.setState(function(){return l})}else{r>Math.ceil(e.data.length/a)&&(r=1);var c=this.store.getSortInfo(),d=t.sortName,p=t.sortOrder;d&&p?(this.store.setSortInfo(p,d),this.store.sort()):c.length>0&&this.store.sort();var h=this.store.page(r,a).get();this.setState(function(){return{data:h,currPage:r,sizePerPage:a,reset:!1}}),this.store.isSearching&&t.afterSearch&&t.afterSearch(this.store.searchText,this.store.getDataIgnoringPagination()),this.store.isFiltering&&t.afterColumnFilter&&t.afterColumnFilter(this.store.filterObj,this.store.getDataIgnoringPagination())}if(this.props.options.expanding!==t.expanding&&this.setState(function(){return{expanding:t.expanding||[]}}),n&&n.selected){var y=n.selected.slice();this.store.setSelectedRowKey(y),this.setState(function(){return{selectedRowKeys:y,reset:!1}})}n&&"none"!==n.mode&&0!==this.state.y&&this.setState(function(){return{y:0,x:0}})}}},{key:"componentDidMount",value:function(){this._adjustTable(),window.addEventListener("resize",this._adjustTable),this.body.container.addEventListener("scroll",this._scrollHeader),this.props.footer&&this.body.container.addEventListener("scroll",this._scrollFooter),this.props.scrollTop&&this._scrollTop()}},{key:"componentWillUnmount",value:function(){window.removeEventListener("resize",this._adjustTable),this.body&&this.body.container&&(this.body.container.removeEventListener("scroll",this._scrollHeader),this.props.footer&&this.body.container.removeEventListener("scroll",this._scrollFooter)),this.filter&&this.filter.removeAllListeners("onFilterChange")}},{key:"componentDidUpdate",value:function(){this._adjustTable(),this.props.options.afterTableComplete&&this.props.options.afterTableComplete()}},{key:"isRemoteDataSource",value:function(e){var t=e||this.props,n=t.remote;return n===!0||D.default.isFunction(n)}},{key:"allowRemote",value:function(e,t){var n=t||this.props,o=n.remote;if("function"==typeof o){var r=o(g.default.REMOTE);return r[e]}return o}},{key:"render",value:function(){var e=this,t={height:this.props.height,maxHeight:this.props.maxHeight},n=this.getColumnsDescription(this.props),o=this.store.getSortInfo(),r=this.renderPagination(),a=this.renderToolBar(),l=this.renderTableFilter(n),i=this.isSelectAll(),u=this.props.expandColumnOptions;"undefined"==typeof u.expandColumnBeforeSelectColumn&&(u.expandColumnBeforeSelectColumn=!0);var f=D.default.renderColGroup(n,this.props.selectRow,u,this.props.version),d=this.renderTableFooter(this.props.footerData,this.state.data,n,f),p=this.props.options.sortIndicator;"undefined"==typeof this.props.options.sortIndicator&&(p=!0);var h=this.props.options.paginationPosition,m=void 0===h?g.default.PAGINATION_POS_BOTTOM:h,v=m!==g.default.PAGINATION_POS_BOTTOM,E=m!==g.default.PAGINATION_POS_TOP,C=s({},this.props.selectRow);this.props.cellEdit&&this.props.cellEdit.mode!==g.default.CELL_EDIT_NONE&&(C.clickToSelect=!1);var O=this.props.options.toolbarPosition,S=void 0===O?g.default.TOOLBAR_POS_TOP:O,T=S!==g.default.TOOLBAR_POS_BOTTOM,_=S!==g.default.TOOLBAR_POS_TOP,x=this.props.options.hideRowOnExpand,R=void 0!==x&&x;return c.default.createElement("div",{className:(0,y.default)("react-bs-table-container",this.props.className,this.props.containerClass),style:this.props.containerStyle},T?a:null,v?r:null,c.default.createElement("div",{ref:function(t){return e.table=t},className:(0,y.default)("react-bs-table",{"react-bs-table-bordered":this.props.bordered},this.props.tableContainerClass),style:s({},t,this.props.tableStyle),onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave},c.default.createElement(w.default,{ref:function(t){return e.header=t},version:this.props.version,colGroups:f,headerContainerClass:this.props.headerContainerClass,tableHeaderClass:this.props.tableHeaderClass,style:this.props.headerStyle,rowSelectType:this.props.selectRow.mode,customComponent:this.props.selectRow.customComponent,hideSelectColumn:this.props.selectRow.hideSelectColumn,sortList:o,sortIndicator:p,onSort:this.handleSort,onSelectAllRow:this.handleSelectAllRow,bordered:this.props.bordered,condensed:this.props.condensed,isFiltered:!!this.filter,isSelectAll:i,reset:this.state.reset,expandColumnVisible:u.expandColumnVisible,expandColumnComponent:u.expandColumnComponent,expandedColumnHeaderComponent:u.expandedColumnHeaderComponent,noAnyExpand:0===this.state.expanding.length,expandAll:this.props.options.expandAll,toggleExpandAllChilds:this.toggleExpandAllChilds,expandColumnBeforeSelectColumn:u.expandColumnBeforeSelectColumn},this.props.children),c.default.createElement(P.default,{ref:function(t){return e.body=t},bodyContainerClass:this.props.bodyContainerClass,tableBodyClass:this.props.tableBodyClass,style:s({},t,this.props.bodyStyle),data:this.state.data,version:this.props.version,expandComponent:this.props.expandComponent,expandableRow:this.props.expandableRow,expandRowBgColor:this.props.options.expandRowBgColor,expandBy:this.props.options.expandBy||g.default.EXPAND_BY_ROW,expandBodyClass:this.props.options.expandBodyClass,expandParentClass:this.props.options.expandParentClass,columns:n,trClassName:this.props.trClassName,trStyle:this.props.trStyle,striped:this.props.striped,bordered:this.props.bordered,hover:this.props.hover,keyField:this.store.getKeyField(),condensed:this.props.condensed,selectRow:C,expandColumnOptions:this.props.expandColumnOptions,cellEdit:this.props.cellEdit,selectedRowKeys:this.state.selectedRowKeys,onRowClick:this.handleRowClick,onRowDoubleClick:this.handleRowDoubleClick,onRowMouseOver:this.handleRowMouseOver,onRowMouseOut:this.handleRowMouseOut,onSelectRow:this.handleSelectRow,noDataText:this.props.options.noDataText,withoutNoDataText:this.props.options.withoutNoDataText,expanding:this.state.expanding,onExpand:this.handleExpandRow,onlyOneExpanding:this.props.options.onlyOneExpanding,beforeShowError:this.props.options.beforeShowError,keyBoardNav:this.props.keyBoardNav,onNavigateCell:this.handleNavigateCell,x:this.state.x,y:this.state.y,withoutTabIndex:this.props.withoutTabIndex,hideRowOnExpand:R,onEditCell:this.handleEditCell}),d),l,E?r:null,_?a:null,this.props.renderAlert?c.default.createElement(b.default,{stack:{limit:3}}):null)}},{key:"isSelectAll",value:function(){if(this.store.isEmpty())return!1;var e=this.props.selectRow,t=e.unselectable,n=e.onlyUnselectVisible,o=this.store.getKeyField(),r=n?this.store.get().map(function(e){return e[o]}):this.store.getAllRowkey(),a=this.store.getSelectedRowKeys();if(n&&(a=a.filter(function(e){return e!==r})),0===a.length)return!1;var l=0,i=0,s=0;return a.forEach(function(e){r.indexOf(e)!==-1?l++:i++,t&&t.indexOf(e)!==-1&&s++}),i!==a.length&&(l===r.length||!(t&&l<=s&&s===t.length)&&"indeterminate")}},{key:"cleanSelected",value:function(){this.store.setSelectedRowKey([]),this.setState(function(){return{selectedRowKeys:[],reset:!1}})}},{key:"cleanSort",value:function(){this.store.cleanSortInfo(),this.setState(function(){return{reset:!1}})}},{key:"toggleExpandAllChilds",value:function(){var e=this,t=this.state.expanding;t.length>0?this.setState(function(){return{expanding:[],reset:!1}}):this.setState(function(){return{expanding:e.store.getAllRowkey(),reset:!1}})}},{key:"editCell",value:function(e,t,n){var o=this.props.options.onCellEdit,r=this.props.cellEdit.afterSaveCell,a=this.getColumnsDescription(this.props),l=a[n].name,i={rowIndex:t,colIndex:n};if(o&&(e=o(this.state.data[t],l,e)),this.allowRemote(g.default.REMOTE_CELL_EDIT))return void(r&&r(this.state.data[t],l,e,i));var s=this.store.edit(e,t,l).get();this.setState(function(){return{data:s,reset:!1}}),r&&r(this.state.data[t],l,e,i)}},{key:"handleAddRowAtBegin",value:function(e){try{this.store.addAtBegin(e)}catch(e){return e}this._handleAfterAddingRow(e,!0)}},{key:"getSizePerPage",value:function(){return this.state.sizePerPage}},{key:"getCurrentPage",value:function(){return this.state.currPage}},{key:"getTableDataIgnorePaging",value:function(){return this.store.getCurrentDisplayData()}},{key:"deleteRow",value:function(e){var t=this,n=this.store.getRowByKey(e),o=this.props.options,r=o.onDeleteRow,a=o.afterDeleteRow,l=o.pageStartIndex;if(r&&r(e,n),this.store.setSelectedRowKey([]),this.allowRemote(g.default.REMOTE_DROP_ROW))return void(a&&a(e,n));this.store.remove(e);var i=void 0;if(this.props.pagination){var s=this.state.sizePerPage,u=Math.ceil(this.store.getDataNum()/s),f=this.state.currPage;f>u&&(f=u),i=this.store.page(D.default.getNormalizedPage(l,f),s).get(),this.setState(function(){return{data:i,selectedRowKeys:t.store.getSelectedRowKeys(),currPage:f,reset:!1}})}else i=this.store.get(),this.setState(function(){return{data:i,reset:!1,selectedRowKeys:t.store.getSelectedRowKeys()}});a&&a(e,n)}},{key:"renderPagination",value:function(){var e=this;if(this.props.pagination){var t=void 0;t=this.allowRemote(g.default.REMOTE_PAGE)?this.props.fetchInfo.dataTotalSize:this.store.getDataNum();var n=this.props.options,o=void 0===n.withFirstAndLast||n.withFirstAndLast;return Math.ceil(t/this.state.sizePerPage)<=1&&this.props.ignoreSinglePage?null:c.default.createElement("div",{className:"react-bs-table-pagination"},c.default.createElement(R.default,{ref:function(t){return e.pagination=t},version:this.props.version,withFirstAndLast:o,alwaysShowAllBtns:n.alwaysShowAllBtns,currPage:this.state.currPage,changePage:this.handlePaginationData,sizePerPage:this.state.sizePerPage,sizePerPageList:n.sizePerPageList||g.default.SIZE_PER_PAGE_LIST,pageStartIndex:n.pageStartIndex,paginationShowsTotal:n.paginationShowsTotal,paginationSize:n.paginationSize||g.default.PAGINATION_SIZE,dataSize:t,onSizePerPageList:n.onSizePerPageList,prePage:n.prePage||g.default.PRE_PAGE,nextPage:n.nextPage||g.default.NEXT_PAGE,firstPage:n.firstPage||g.default.FIRST_PAGE,lastPage:n.lastPage||g.default.LAST_PAGE,prePageTitle:n.prePageTitle||g.default.PRE_PAGE_TITLE,nextPageTitle:n.nextPageTitle||g.default.NEXT_PAGE_TITLE,firstPageTitle:n.firstPageTitle||g.default.FIRST_PAGE_TITLE,lastPageTitle:n.lastPageTitle||g.default.LAST_PAGE_TITLE,hideSizePerPage:n.hideSizePerPage,sizePerPageDropDown:n.sizePerPageDropDown,hidePageListOnlyOnePage:n.hidePageListOnlyOnePage,paginationPanel:n.paginationPanel,keepSizePerPageState:n.keepSizePerPageState,open:!1}))}return null}},{key:"renderToolBar",value:function(){var e=this,t=this.props,n=t.exportCSV,o=t.selectRow,r=t.insertRow,a=t.deleteRow,l=t.search,i=t.children,s=t.keyField,u=o&&o.showOnlySelected,f="undefined"==typeof this.props.options.printToolBar||this.props.options.printToolBar;if(u||r||a||l||n||this.props.options.searchPanel||this.props.options.btnGroup||this.props.options.toolBar){var d=void 0;return d=Array.isArray(i)?i.filter(function(e){return null!=e}).map(function(e,t){if(e){var n=e.props,o=n.isKey||s===n.dataField;return{isKey:o,name:n.headerText||n.children,field:n.dataField,hiddenOnInsert:n.hiddenOnInsert,keyValidator:n.keyValidator,customInsertEditor:n.customInsertEditor,autoValue:n.autoValue||!1,editable:n.editable&&D.default.isFunction("function"===n.editable)?n.editable():n.editable,format:!!n.dataFormat&&function(e){return n.dataFormat(e,null,n.formatExtraData,t).replace(/<.*?>/g,"")}}}}):[{name:i.props.headerText||i.props.children,field:i.props.dataField,editable:i.props.editable,customInsertEditor:i.props.customInsertEditor,hiddenOnInsert:i.props.hiddenOnInsert,keyValidator:i.props.keyValidator}],c.default.createElement("div",{className:"react-bs-table-tool-bar "+(f?"":"hidden-print")},c.default.createElement(N.default,{ref:function(t){return e.toolbar=t},version:this.props.version,defaultSearch:this.props.options.defaultSearch,clearSearch:this.props.options.clearSearch,searchPosition:this.props.options.searchPosition,searchDelayTime:this.props.options.searchDelayTime,enableInsert:r,enableDelete:a,enableSearch:l,enableExportCSV:n,enableShowOnlySelected:u,columns:d,searchPlaceholder:this.props.searchPlaceholder,exportCSVText:this.props.options.exportCSVText,insertText:this.props.options.insertText,deleteText:this.props.options.deleteText,saveText:this.props.options.saveText,closeText:this.props.options.closeText,ignoreEditable:this.props.options.ignoreEditable,onAddRow:this.handleAddRow,onDropRow:this.handleDropRow,onSearch:this.handleSearch,onExportCSV:this.handleExportCSV,onShowOnlySelected:this.handleShowOnlySelected,insertModalHeader:this.props.options.insertModalHeader,insertModalFooter:this.props.options.insertModalFooter,insertModalBody:this.props.options.insertModalBody,insertModal:this.props.options.insertModal,insertBtn:this.props.options.insertBtn,deleteBtn:this.props.options.deleteBtn,showSelectedOnlyBtn:this.props.options.showSelectedOnlyBtn,exportCSVBtn:this.props.options.exportCSVBtn,clearSearchBtn:this.props.options.clearSearchBtn,searchField:this.props.options.searchField,searchPanel:this.props.options.searchPanel,btnGroup:this.props.options.btnGroup,toolBar:this.props.options.toolBar,reset:this.state.reset,isValidKey:this.store.isValidKey,insertFailIndicator:this.props.options.insertFailIndicator||g.default.INSERT_FAIL_INDICATOR}))}return null}},{key:"renderTableFilter",value:function(e){return this.props.columnFilter?c.default.createElement(j.default,{columns:e,rowSelectType:this.props.selectRow.mode,onFilter:this.handleFilterData}):null}},{key:"renderTableFooter",value:function(e,t,n,o){var r=this;if(this.props.footer){var a=!0,l=this.props.selectRow.mode,i=D.default.isSelectRowDefined(l);return i&&(a=this.props.selectRow.hideSelectColumn),c.default.createElement(T.default,{ref:function(e){return r.footer=e},columns:n,colGroups:o,footerFormatterReturnData:t,tableFooterClass:this.props.tableFooterClass,style:this.props.headerStyle,hideSelectColumn:a,expandColumnVisible:this.props.expandColumnOptions.expandColumnVisible,bordered:this.props.bordered,condensed:this.props.condensed,isFiltered:!!this.filter,showStickyColumn:this.props.showStickyColumn},e)}return null}},{key:"_adjustTable",value:function(){this._adjustHeight(),this.props.printable||this._adjustHeaderWidth()}},{key:"_adjustHeaderWidth",value:function(){var e=this.header.getHeaderColGrouop(),t=this.body.tbody,n=this.body.getHeaderColGrouop(),o=t.childNodes[0],r=t.parentNode.getBoundingClientRect().height>t.parentNode.parentNode.getBoundingClientRect().height,a=r?D.default.getScrollBarWidth():0;if(o&&this.store.getDataNum()){if(r||this.isVerticalScroll!==r)for(var l=o.childNodes,i=0;i=1?Object.keys(f).length:c[c.indexOf(i)+n],s+=o;var d=e.state.data.length,p=Object.keys(f).filter(function(e){return!f[e].hidden}).length,h=Object.keys(f).filter(function(e){return f[e].hidden}).length;if(s>=d){u++;var y=a?e.pagination.getLastPage():-1;if(!(u<=y))return;e.handlePaginationData(u,e.state.sizePerPage),s=0}else if(s<0){if(u--,!(u>0))return;e.handlePaginationData(u,e.state.sizePerPage),s=d-1}else if(i-h>=p){if(s+1===d){u++;var m=a?e.pagination.getLastPage():-1;if(!(u<=m))return;e.handlePaginationData(u,e.state.sizePerPage),s=0}else s++;i=r?c[1]:c[0]}else if(i<0)if(i=c[c.length-1],0===s){if(u--,!(u>0))return;e.handlePaginationData(u,e.state.sizePerPage),s=e.state.sizePerPage-1}else s--;e.setState(function(){return{x:i,y:s,currPage:u,reset:!1}})},this.handleRowClick=function(t,n,o,r){var a=e.props,l=a.options,s=a.keyBoardNav;if(l.onRowClick&&l.onRowClick(t,o,n,r),s){var u="object"===("undefined"==typeof s?"undefined":i(s))?s:{},f=u.clickToNav;f=f!==!1||f,f&&e.setState(function(){return{x:o,y:n,reset:!1}})}},this.handleRowDoubleClick=function(t,n){e.props.options.onRowDoubleClick&&e.props.options.onRowDoubleClick(t,n)},this.handleSelectAllRow=function(t){var n=t.currentTarget.checked,o=e.store.getKeyField(),r=e.props.selectRow,a=r.onSelectAll,l=r.unselectable,i=r.selected,s=r.onlyUnselectVisible,u=s?e.state.selectedRowKeys:[],f=!0,c=e.store.get();if(n||s||(c=e.store.getRowByKey(e.state.selectedRowKeys)),l&&l.length>0&&(c=n?c.filter(function(e){return l.indexOf(e[o])===-1||i&&i.indexOf(e[o])!==-1}):c.filter(function(e){return l.indexOf(e[o])===-1})),a&&(f=e.props.selectRow.onSelectAll(n,c)),"undefined"==typeof f||f!==!1){if(n)if(Array.isArray(f))u=f;else{var d=c.map(function(e){return e[o]});u=s?u.concat(d):d}else if(l&&i)u=i.filter(function(e){return l.indexOf(e)>-1});else if(s){var p=c.map(function(e){return e[o]});u=u.filter(function(e){return p.indexOf(e)===-1})}e.store.setSelectedRowKey(u),e.setState(function(){return{selectedRowKeys:u,reset:!1}})}},this.handleShowOnlySelected=function(){e.store.ignoreNonSelected();var t=e.props.options.pageStartIndex,n=void 0;n=e.props.pagination?e.store.page(D.default.getNormalizedPage(t),e.state.sizePerPage).get():e.store.get(),e.setState(function(){return{data:n,reset:!1,currPage:D.default.getFirstPage(t)}})},this.handleSelectRow=function(t,n,o,r){var a=!0,l=e.store.getSelectedRowKeys(),i=t[e.store.getKeyField()],s=e.props.selectRow;
+s.onSelect&&(a=s.onSelect(t,n,o,r)),"undefined"!=typeof a&&a===!1||(s.mode===g.default.ROW_SELECT_SINGLE?l=n?[i]:[]:n?l.push(i):l=l.filter(function(e){return i!==e}),e.store.setSelectedRowKey(l),e.setState(function(){return{selectedRowKeys:l,reset:!1}}))},this.handleEditCell=function(t,n,o){var r=e.props.cellEdit.beforeSaveCell,a=e.getColumnsDescription(e.props),l=a[o].name,i=function(){e.setState(function(){return{data:e.store.get(),reset:!1}})};if(r){var s=function(r){e.body.cancelEditCell(),r||void 0===r?e.editCell(t,n,o):i()},u={rowIndex:n,colIndex:o},f=r(e.state.data[n],l,t,s,u);if(f===!1&&"undefined"!=typeof f)return i();if(f===g.default.AWAIT_BEFORE_CELL_EDIT)return f}e.editCell(t,n,o)},this.handleAddRow=function(t){var n=!1,o=e.props.options.onAddRow,r=function(t){return n?void e.toolbar.afterHandleSaveBtnClick(t):t},a=function(n){if("undefined"!=typeof n&&""!==n)return r(n);if(e.allowRemote(g.default.REMOTE_INSERT_ROW))return e.props.options.afterInsertRow&&e.props.options.afterInsertRow(t),r();try{e.store.add(t)}catch(e){return r(e.message)}return e._handleAfterAddingRow(t,!1),r()};if(o){var l=e.store.getColInfos(),i=o(t,l,a);return""!==i&&i!==!1?i:"undefined"==typeof i?a():(n=!0,!n)}return a()},this.getPageByRowKey=function(t){var n=e.state.sizePerPage,o=e.store.getCurrentDisplayData(),r=e.store.getKeyField(),a=o.findIndex(function(e){return e[r]===t});return a>-1?parseInt(a/n,10)+1:a},this.handleDropRow=function(t){var n=t?t:e.store.getSelectedRowKeys();n&&n.length>0&&(e.props.options.handleConfirmDeleteRow?e.props.options.handleConfirmDeleteRow(function(){e.deleteRow(n)},n):confirm("Are you sure you want to delete?")&&e.deleteRow(n))},this.handleFilterData=function(t){var n=e.props,o=n.autoCollapse.filter,r=n.options,a=r.onFilterChange,l=r.pageStartIndex;if(a){var i=e.store.getColInfos();a(t,i)}if(e.setState(function(){var e={currPage:D.default.getFirstPage(l),reset:!1};return o&&(e.expanding=[]),e}),e.allowRemote(g.default.REMOTE_FILTER))return void(e.props.options.afterColumnFilter&&e.props.options.afterColumnFilter(t,e.store.getDataIgnoringPagination()));e.store.filter(t);var s=e.store.getSortInfo();s.length>0&&e.store.sort();var u=void 0;if(e.props.pagination){var f=e.state.sizePerPage;u=e.store.page(D.default.getNormalizedPage(l),f).get()}else u=e.store.get();e.props.options.afterColumnFilter&&e.props.options.afterColumnFilter(t,e.store.getDataIgnoringPagination()),e.setState(function(){return{data:u,reset:!1}})},this.handleExportCSV=function(){var t={},n=e.props.csvFileName,o=e.props.options,r=o.onExportToCSV,a=o.exportCSVSeparator,l=o.noAutoBOM,i=o.excludeCSVHeader;t=r?r():e.store.getDataIgnoringPagination();var s=a||g.default.DEFAULT_CSV_SEPARATOR,u=[];e.props.children.filter(function(e){return null!=e}).map(function(e){(e.props.export===!0||"undefined"==typeof e.props.export&&e.props.hidden===!1)&&u.push({field:e.props.dataField,type:e.props.csvFieldType,format:e.props.csvFormat,extraData:e.props.csvFormatExtraData,header:e.props.csvHeader||e.props.dataField,row:Number(e.props.row)||0,rowSpan:Number(e.props.rowSpan)||1,colSpan:Number(e.props.colSpan)||1})}),D.default.isFunction(n)&&(n=n()),(0,L.default)(t,u,n,s,l,i)},this.handleSearch=function(t){e.toolbar&&e.toolbar.setSearchInput(t);var n=e.props.autoCollapse.search,o=e.props.options,r=o.onSearchChange,a=o.pageStartIndex;if(r){var l=e.store.getColInfos();r(t,l,e.props.multiColumnSearch)}if(e.setState(function(){var e={currPage:D.default.getFirstPage(a),reset:!1};return n&&(e.expanding=[]),e}),e.allowRemote(g.default.REMOTE_SEARCH))return void(e.props.options.afterSearch&&e.props.options.afterSearch(t,e.store.getDataIgnoringPagination()));e.store.search(t);var i=e.store.getSortInfo();i.length>0&&e.store.sort();var s=void 0;if(e.props.pagination){var u=e.state.sizePerPage;s=e.store.page(D.default.getNormalizedPage(a),u).get()}else s=e.store.get();e.props.options.afterSearch&&e.props.options.afterSearch(t,e.store.getDataIgnoringPagination()),e.setState(function(){return{data:s,reset:!1}})},this._scrollTop=function(){var t=e.props.scrollTop;t===g.default.SCROLL_TOP?e.body.container.scrollTop=0:t===g.default.SCROLL_BOTTOM?e.body.container.scrollTop=e.body.container.scrollHeight:"number"!=typeof t||isNaN(t)||(e.body.container.scrollTop=t)},this._scrollHeader=function(t){e.header.container.scrollLeft=t.currentTarget.scrollLeft},this._scrollFooter=function(t){e.props.footer&&(e.footer.container.scrollLeft=t.currentTarget.scrollLeft)}};V.propTypes={keyField:p.default.string,height:p.default.oneOfType([p.default.string,p.default.number]),maxHeight:p.default.oneOfType([p.default.string,p.default.number]),data:p.default.oneOfType([p.default.array,p.default.object]),version:p.default.string,remote:p.default.oneOfType([p.default.bool,p.default.func]),replace:p.default.oneOfType([p.default.bool,p.default.func]),scrollTop:p.default.oneOfType([p.default.string,p.default.number]),striped:p.default.bool,bordered:p.default.bool,hover:p.default.bool,condensed:p.default.bool,pagination:p.default.bool,printable:p.default.bool,withoutTabIndex:p.default.bool,keyBoardNav:p.default.oneOfType([p.default.bool,p.default.object]),searchPlaceholder:p.default.string,selectRow:p.default.shape({mode:p.default.oneOf([g.default.ROW_SELECT_NONE,g.default.ROW_SELECT_SINGLE,g.default.ROW_SELECT_MULTI]),customComponent:p.default.func,bgColor:p.default.oneOfType([p.default.string,p.default.func]),selected:p.default.array,onSelect:p.default.func,onSelectAll:p.default.func,clickToSelect:p.default.bool,hideSelectColumn:p.default.bool,clickToSelectAndEditCell:p.default.bool,clickToExpand:p.default.bool,showOnlySelected:p.default.bool,unselectable:p.default.array,columnWidth:p.default.oneOfType([p.default.number,p.default.string]),onlyUnselectVisible:p.default.bool}),cellEdit:p.default.shape({mode:p.default.string,blurToSave:p.default.bool,blurToEscape:p.default.bool,beforeSaveCell:p.default.func,afterSaveCell:p.default.func,nonEditableRows:p.default.func}),insertRow:p.default.bool,deleteRow:p.default.bool,search:p.default.bool,multiColumnSearch:p.default.bool,strictSearch:p.default.bool,columnFilter:p.default.bool,trClassName:p.default.any,trStyle:p.default.any,tableStyle:p.default.object,containerStyle:p.default.object,headerStyle:p.default.object,bodyStyle:p.default.object,containerClass:p.default.string,tableContainerClass:p.default.string,headerContainerClass:p.default.string,bodyContainerClass:p.default.string,tableHeaderClass:p.default.string,tableBodyClass:p.default.string,tableFooterClass:p.default.string,options:p.default.shape({clearSearch:p.default.bool,sortName:p.default.oneOfType([p.default.string,p.default.array]),sortOrder:p.default.oneOfType([p.default.string,p.default.array]),defaultSortName:p.default.oneOfType([p.default.string,p.default.array]),defaultSortOrder:p.default.oneOfType([p.default.string,p.default.array]),sortIndicator:p.default.bool,afterTableComplete:p.default.func,afterDeleteRow:p.default.func,afterInsertRow:p.default.func,afterSearch:p.default.func,afterColumnFilter:p.default.func,onRowClick:p.default.func,onRowDoubleClick:p.default.func,page:p.default.number,pageStartIndex:p.default.number,paginationShowsTotal:p.default.oneOfType([p.default.bool,p.default.func]),sizePerPageList:p.default.array,sizePerPage:p.default.number,paginationSize:p.default.number,paginationPosition:p.default.oneOf([g.default.PAGINATION_POS_TOP,g.default.PAGINATION_POS_BOTTOM,g.default.PAGINATION_POS_BOTH]),toolbarPosition:p.default.oneOf([g.default.TOOLBAR_POS_TOP,g.default.TOOLBAR_POS_BOTTOM,g.default.TOOLBAR_POS_BOTH]),hideSizePerPage:p.default.bool,hidePageListOnlyOnePage:p.default.bool,alwaysShowAllBtns:p.default.bool,withFirstAndLast:p.default.bool,keepSizePerPageState:p.default.bool,onSortChange:p.default.func,onPageChange:p.default.func,onSizePerPageList:p.default.func,onFilterChange:p.default.func,onSearchChange:p.default.func,onAddRow:p.default.func,onExportToCSV:p.default.func,onCellEdit:p.default.func,noDataText:p.default.oneOfType([p.default.string,p.default.object]),withoutNoDataText:p.default.bool,handleConfirmDeleteRow:p.default.func,prePage:p.default.any,nextPage:p.default.any,firstPage:p.default.any,lastPage:p.default.any,prePageTitle:p.default.string,nextPageTitle:p.default.string,firstPageTitle:p.default.string,lastPageTitle:p.default.string,searchDelayTime:p.default.number,excludeCSVHeader:p.default.bool,exportCSVText:p.default.string,exportCSVSeparator:p.default.string,insertText:p.default.string,deleteText:p.default.string,saveText:p.default.string,closeText:p.default.string,ignoreEditable:p.default.bool,defaultSearch:p.default.string,insertModalHeader:p.default.func,insertModalBody:p.default.func,insertModalFooter:p.default.func,insertModal:p.default.func,insertBtn:p.default.func,deleteBtn:p.default.func,showSelectedOnlyBtn:p.default.func,exportCSVBtn:p.default.func,clearSearchBtn:p.default.func,searchField:p.default.func,searchPanel:p.default.func,btnGroup:p.default.func,toolBar:p.default.func,sizePerPageDropDown:p.default.func,paginationPanel:p.default.func,searchPosition:p.default.string,expandRowBgColor:p.default.string,expandBy:p.default.string,expanding:p.default.array,onExpand:p.default.func,onlyOneExpanding:p.default.bool,expandBodyClass:p.default.oneOfType([p.default.string,p.default.func]),expandParentClass:p.default.oneOfType([p.default.string,p.default.func]),beforeShowError:p.default.func,printToolBar:p.default.bool,insertFailIndicator:p.default.string,noAutoBOM:p.default.bool,expandAll:p.default.bool,hideRowOnExpand:p.default.bool}),fetchInfo:p.default.shape({dataTotalSize:p.default.number}),renderAlert:p.default.bool,exportCSV:p.default.bool,csvFileName:p.default.oneOfType([p.default.string,p.default.func]),ignoreSinglePage:p.default.bool,expandableRow:p.default.func,expandComponent:p.default.func,autoCollapse:p.default.shape({sort:p.default.bool,filter:p.default.bool,search:p.default.bool}),expandColumnOptions:p.default.shape({columnWidth:p.default.oneOfType([p.default.number,p.default.string]),expandColumnVisible:p.default.bool,expandColumnComponent:p.default.func,expandedColumnHeaderComponent:p.default.func,expandColumnBeforeSelectColumn:p.default.bool}),footer:p.default.bool},V.defaultProps={version:"3",replace:!1,scrollTop:void 0,expandComponent:void 0,expandableRow:void 0,expandColumnOptions:{expandColumnVisible:!1,expandColumnComponent:void 0,expandedColumnHeaderComponent:void 0,expandColumnBeforeSelectColumn:!0},height:"100%",maxHeight:void 0,striped:!1,bordered:!0,hover:!1,condensed:!1,pagination:!1,printable:!1,withoutTabIndex:!1,keyBoardNav:!1,searchPlaceholder:void 0,selectRow:{mode:g.default.ROW_SELECT_NONE,bgColor:g.default.ROW_SELECT_BG_COLOR,selected:[],onSelect:void 0,onSelectAll:void 0,clickToSelect:!1,hideSelectColumn:!1,clickToSelectAndEditCell:!1,clickToExpand:!1,showOnlySelected:!1,unselectable:[],customComponent:void 0,onlyUnselectVisible:!1},cellEdit:{mode:g.default.CELL_EDIT_NONE,blurToSave:!1,blurToEscape:!1,beforeSaveCell:void 0,afterSaveCell:void 0,nonEditableRows:void 0},insertRow:!1,deleteRow:!1,search:!1,multiColumnSearch:!1,strictSearch:void 0,multiColumnSort:1,columnFilter:!1,trClassName:"",trStyle:void 0,tableStyle:void 0,containerStyle:void 0,headerStyle:void 0,bodyStyle:void 0,containerClass:null,tableContainerClass:null,headerContainerClass:null,bodyContainerClass:null,tableHeaderClass:null,tableBodyClass:null,tableFooterClass:null,options:{clearSearch:!1,sortName:void 0,sortOrder:void 0,defaultSortName:void 0,defaultSortOrder:void 0,sortIndicator:!0,afterTableComplete:void 0,afterDeleteRow:void 0,afterInsertRow:void 0,afterSearch:void 0,afterColumnFilter:void 0,onRowClick:void 0,onRowDoubleClick:void 0,onMouseLeave:void 0,onMouseEnter:void 0,onRowMouseOut:void 0,onRowMouseOver:void 0,page:void 0,paginationShowsTotal:!1,sizePerPageList:g.default.SIZE_PER_PAGE_LIST,sizePerPage:void 0,paginationSize:g.default.PAGINATION_SIZE,paginationPosition:g.default.PAGINATION_POS_BOTTOM,toolbarPosition:g.default.TOOLBAR_POS_TOP,hideSizePerPage:!1,hidePageListOnlyOnePage:!1,alwaysShowAllBtns:!1,withFirstAndLast:!0,keepSizePerPageState:!1,onSizePerPageList:void 0,noDataText:void 0,withoutNoDataText:!1,handleConfirmDeleteRow:void 0,prePage:g.default.PRE_PAGE,nextPage:g.default.NEXT_PAGE,firstPage:g.default.FIRST_PAGE,lastPage:g.default.LAST_PAGE,prePageTitle:g.default.PRE_PAGE_TITLE,nextPageTitle:g.default.NEXT_PAGE_TITLE,firstPageTitle:g.default.FIRST_PAGE_TITLE,lastPageTitle:g.default.LAST_PAGE_TITLE,pageStartIndex:1,searchDelayTime:void 0,excludeCSVHeader:!1,exportCSVText:g.default.EXPORT_CSV_TEXT,exportCSVSeparator:g.default.DEFAULT_CSV_SEPARATOR,insertText:g.default.INSERT_BTN_TEXT,deleteText:g.default.DELETE_BTN_TEXT,saveText:g.default.SAVE_BTN_TEXT,closeText:g.default.CLOSE_BTN_TEXT,ignoreEditable:!1,defaultSearch:"",insertModalHeader:void 0,insertModalBody:void 0,insertModalFooter:void 0,insertModal:void 0,insertBtn:void 0,deleteBtn:void 0,showSelectedOnlyBtn:void 0,exportCSVBtn:void 0,clearSearchBtn:void 0,searchField:void 0,searchPanel:void 0,btnGroup:void 0,toolBar:void 0,sizePerPageDropDown:void 0,paginationPanel:void 0,searchPosition:"right",expandRowBgColor:void 0,expandBy:g.default.EXPAND_BY_ROW,expanding:[],onExpand:void 0,onlyOneExpanding:!1,expandBodyClass:null,expandParentClass:null,beforeShowError:void 0,printToolBar:!0,insertFailIndicator:g.default.INSERT_FAIL_INDICATOR,noAutoBOM:!0,expandAll:!1,hideRowOnExpand:!1},fetchInfo:{dataTotalSize:0},renderAlert:!0,exportCSV:!1,csvFileName:"spreadsheet.csv",ignoreSinglePage:!1,autoCollapse:{sort:g.default.AUTO_COLLAPSE_WHEN_SORT,filter:g.default.AUTO_COLLAPSE_WHEN_FILTER,search:g.default.AUTO_COLLAPSE_WHEN_SEARCH},footer:!1},t.default=V},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var i=Object.assign||function(e){for(var t=1;t2&&void 0!==arguments[2]?arguments[2]:-1,r=n.props,a=r.columns,l=r.keyField,i=r.expandBy,s=r.expandableRow,u=r.selectRow,f=u.mode,c=u.clickToExpand,d=u.hideSelectColumn,p=r.onlyOneExpanding,h=y.default.isSelectRowDefined(f),m=!(h&&!c);if(o=h&&!d?o-1:o,o=n._isExpandColumnVisible()?o-1:o,s&&m&&(i===b.default.EXPAND_BY_ROW||i===b.default.EXPAND_BY_COL&&o<0||i===b.default.EXPAND_BY_COL&&a[o].expandable)){var v=n.props.expanding,g=n.props.data[t-1][l],E=v.indexOf(g)>-1;E?v=v.filter(function(e){return e!==g}):p?v=[g]:v.push(g),n.props.onExpand(v,g,E,e)}},n.handleEditCell=function(e,t,o,r){var a=n.props.selectRow,l=y.default.isSelectRowDefined(a.mode),i=n._isExpandColumnVisible();if(l&&(t--,a.hideSelectColumn&&t++),i&&t--,e--,"tab"===o){l&&!a.hideSelectColumn&&t++,i&&t++,n.handleCompleteEditCell(r.target.value,e,t-1),t>=n.props.columns.length?n.handleCellKeyDown(r,!0):n.handleCellKeyDown(r);var s=n.nextEditableCell(e,t),u=s.nextRIndex,f=s.nextCIndex;e=u,t=f}var c={currEditCell:{rid:e,cid:t}};if(n.props.selectRow.clickToSelectAndEditCell&&n.props.cellEdit.mode!==b.default.CELL_EDIT_DBCLICK){var d=n.props.selectedRowKeys.indexOf(n.props.data[e][n.props.keyField])!==-1;n.handleSelectRow(e+1,!d,r)}n.setState(function(){return c})},n.nextEditableCell=function(e,t){var o=n.props.keyField,r=e,a=t,l=void 0,i=void 0;do{if(a>=n.props.columns.length&&(r++,a=0),l=n.props.data[r],i=n.props.columns[a],!l)break;var s=i.editable;if(y.default.isFunction(i.editable)&&(s=i.editable(i,l,r,a)),s&&s.readOnly!==!0&&!i.hidden&&o!==i.name)break;a++}while(l);return{nextRIndex:r,nextCIndex:a}},n.handleCompleteEditCell=function(e,t,o){if(null!==e){var r=n.props.onEditCell(e,t,o);r!==b.default.AWAIT_BEFORE_CELL_EDIT&&n.setState(function(){return{currEditCell:null}})}else n.setState(function(){return{currEditCell:null}})},n.cancelEditCell=function(){n.setState(function(){return{currEditCell:null}})},n.handleClickonSelectColumn=function(e,t,o,r){if(e.stopPropagation(),"TD"===e.target.tagName&&(n.props.selectRow.clickToSelect||n.props.selectRow.clickToSelectAndEditCell)){var a=n.props.selectRow.unselectable||[];a.indexOf(r[n.props.keyField])===-1&&(n.handleSelectRow(o+1,t,e),n.handleClickCell(e,o+1))}},n.getHeaderColGrouop=function(){return n.header.childNodes},n.state={currEditCell:null},n}return l(t,e),u(t,[{key:"render",value:function(){var e=this,t=this.props,n=t.cellEdit,o=t.beforeShowError,r=t.x,a=t.y,l=t.keyBoardNav,s=t.trStyle,u=t.version,f={"table-striped":this.props.striped,"table-bordered":this.props.bordered,"table-hover":this.props.hover};this.props.condensed&&(y.default.isBootstrap4(u)?f["table-sm"]=!0:f["table-condensed"]=!0);var d=(0,T.default)("table",f,this.props.tableBodyClass),p=n.nonEditableRows&&n.nonEditableRows()||[],h=this.props.selectRow.unselectable||[],m=y.default.isSelectRowDefined(this.props.selectRow.mode),v=y.default.renderColGroup(this.props.columns,this.props.selectRow,this.props.expandColumnOptions,u),E=this.props.selectRow.mode===b.default.ROW_SELECT_SINGLE?"radio":"checkbox",O=this.props.selectRow.customComponent,S=l===!0||"object"===("undefined"==typeof l?"undefined":i(l)),_="object"===("undefined"==typeof l?"undefined":i(l))?l.customStyleOnEditCell:null,x="object"===("undefined"==typeof l?"undefined":i(l))?l.customStyle:null,R=this.props.expandColumnOptions.expandColumnComponent,k=this.props.columns.filter(function(e){return e&&!e.hidden}).length;m&&!this.props.selectRow.hideSelectColumn&&(k+=1);var N=1;this.props.expandColumnOptions.expandColumnVisible&&(k+=1);var F=this.props.data.map(function(e,t){var l=this.props.columns.filter(function(e){return null!=e}).map(function(l,i){var s=e[l.name],u=t===a&&i===r;if(l.name!==this.props.keyField&&l.editable&&l.editable.readOnly!==!0&&null!==this.state.currEditCell&&this.state.currEditCell.rid===t&&this.state.currEditCell.cid===i&&p.indexOf(e[this.props.keyField])===-1){var f=l.editable,d=!!l.format&&function(n){return l.format(n,e,l.formatExtraData,t).replace(/<.*?>/g,"")};return y.default.isFunction(l.editable)&&(f=l.editable(s,e,t,i)),c.default.createElement(w.default,{completeEdit:this.handleCompleteEditCell,editable:f,attrs:l.editAttrs,customEditor:l.customEditor,format:!!l.format&&d,key:i,blurToSave:n.blurToSave,blurToEscape:n.blurToEscape,onTab:this.handleEditCell,rowIndex:t,colIndex:i,row:e,fieldValue:s,className:l.editClassName,invalidColumnClassName:l.invalidEditColumnClassName,beforeShowError:o,isFocus:u,customStyleWithNav:_})}var h=void 0,m=s&&s.toString(),b=null,v=l.className,g=l.style;return y.default.isFunction(l.className)&&(v=l.className(s,e,t,i)),y.default.isFunction(l.style)&&(g=l.style(s,e,t,i)),"undefined"!=typeof l.format&&(h=l.format(s,e,l.formatExtraData,t),m=c.default.isValidElement(h)?h:c.default.createElement("div",{dangerouslySetInnerHTML:{__html:h}})),y.default.isFunction(l.columnTitle)?b=l.columnTitle(s,e,t,i):"string"==typeof l.columnTitle?b=l.columnTitle:l.columnTitle&&(h?b=h.toString():s&&(b=s.toString())),c.default.createElement(C.default,{key:i,cIndex:i,rIndex:t,dataAlign:l.align,className:v,columnTitle:b,cellEdit:n,hidden:l.hidden,onEdit:this.handleEditCell,width:l.width,onClick:this.handleClickCell,attrs:l.attrs,style:g,tabIndex:N++ +"",isFocus:u,keyBoardNav:S,onKeyDown:this.handleCellKeyDown,customNavStyle:x,row:e,withoutTabIndex:this.props.withoutTabIndex},m)},this),i=e[this.props.keyField],u=h.indexOf(i)!==-1,f=this.props.selectedRowKeys.indexOf(i)!==-1,d=m&&!this.props.selectRow.hideSelectColumn?this.renderSelectRowColumn(f,E,u,O,t,e):null,v=this.renderExpandRowColumn(this.props.expandableRow&&this.props.expandableRow(e),this.props.expanding.indexOf(i)>-1,R,t),T=this.props.expandableRow&&this.props.expandableRow(e),F=T&&this.props.expanding.indexOf(i)>-1,j=this.props.hideRowOnExpand,I=this.props.trClassName;y.default.isFunction(this.props.trClassName)&&(I=this.props.trClassName(e,t)),F&&this.props.expandParentClass&&(I+=y.default.isFunction(this.props.expandParentClass)?" "+this.props.expandParentClass(e,t):" "+this.props.expandParentClass);var A=[c.default.createElement(g.default,{isSelected:f,key:i,className:I,index:t,row:e,selectRow:m?this.props.selectRow:void 0,enableCellEdit:n.mode!==b.default.CELL_EDIT_NONE,onRowClick:this.handleRowClick,onRowDoubleClick:this.handleRowDoubleClick,onRowMouseOver:this.handleRowMouseOver,onRowMouseOut:this.handleRowMouseOut,onSelectRow:this.handleSelectRow,onExpandRow:this.handleClickCell,unselectableRow:u,style:s,hidden:F&&j,dbClickToEdit:n.mode===b.default.CELL_EDIT_DBCLICK},this.props.expandColumnOptions.expandColumnVisible&&this.props.expandColumnOptions.expandColumnBeforeSelectColumn&&v,d,this.props.expandColumnOptions.expandColumnVisible&&!this.props.expandColumnOptions.expandColumnBeforeSelectColumn&&v,l)];if(T){var D=y.default.isFunction(this.props.expandBodyClass)?this.props.expandBodyClass(e,t,F):this.props.expandBodyClass;A.push(c.default.createElement(P.default,{key:i+"-expand",row:e,className:D,bgColor:this.props.expandRowBgColor||this.props.selectRow.bgColor||void 0,hidden:!F,colSpan:k,width:"100%"},this.props.expandComponent(e)))}return A},this);if(0===F.length&&!this.props.withoutNoDataText){var j=this.props.columns.filter(function(e){return!e.hidden}).length+(m&&!this.props.selectRow.hideSelectColumn?1:0)+(this.props.expandColumnOptions.expandColumnVisible?1:0);F=[c.default.createElement(g.default,{key:"##table-empty##",style:s},c.default.createElement("td",{"data-toggle":"collapse",colSpan:j,className:"react-bs-table-no-data"},this.props.noDataText||b.default.NO_DATA_TEXT))]}return c.default.createElement("div",{ref:function(t){return e.container=t},className:(0,T.default)("react-bs-container-body",this.props.bodyContainerClass),style:this.props.style},c.default.createElement("table",{className:d},c.default.cloneElement(v,{ref:function(t){return e.header=t}}),c.default.createElement("tbody",{ref:function(t){return e.tbody=t}},F)))}},{key:"renderSelectRowColumn",value:function(e,t,n){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,r=this,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,l=arguments[5];return c.default.createElement("td",{onClick:function(t){r.handleClickonSelectColumn(t,!e,a,l);
+},style:{textAlign:"center"}},o?c.default.createElement(o,{type:t,checked:e,disabled:n,rowIndex:a,onChange:function(e){return r.handleSelectRowColumChange(e,a)}}):c.default.createElement("input",{type:t,checked:e,disabled:n,onChange:function(e){return r.handleSelectRowColumChange(e,a)}}))}},{key:"renderExpandRowColumn",value:function(e,t,n){var o=this,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,a=null;return a=n?c.default.createElement(n,{isExpandableRow:e,isExpanded:t}):e?t?c.default.createElement("span",{className:"fa fa-minus glyphicon glyphicon-minus"}):c.default.createElement("span",{className:"fa fa-plus glyphicon glyphicon-plus"}):" ",c.default.createElement("td",{className:"react-bs-table-expand-cell",onClick:function(e){return o.handleClickCell(e,r+1)}},a)}},{key:"_isExpandColumnVisible",value:function(){return this.props.expandColumnOptions.expandColumnVisible}}]),t}(f.Component);x.propTypes={version:p.default.string,data:p.default.array,columns:p.default.array,striped:p.default.bool,bordered:p.default.bool,hover:p.default.bool,condensed:p.default.bool,keyField:p.default.string,selectedRowKeys:p.default.array,onRowClick:p.default.func,onRowDoubleClick:p.default.func,onSelectRow:p.default.func,noDataText:p.default.oneOfType([p.default.string,p.default.object]),withoutNoDataText:p.default.bool,style:p.default.object,tableBodyClass:p.default.string,bodyContainerClass:p.default.string,expandableRow:p.default.func,expandComponent:p.default.func,expandRowBgColor:p.default.string,expandBy:p.default.string,expanding:p.default.array,onExpand:p.default.func,expandBodyClass:p.default.oneOfType([p.default.string,p.default.func]),expandParentClass:p.default.oneOfType([p.default.string,p.default.func]),onlyOneExpanding:p.default.bool,beforeShowError:p.default.func,keyBoardNav:p.default.oneOfType([p.default.bool,p.default.object]),x:p.default.number,y:p.default.number,onNavigateCell:p.default.func,withoutTabIndex:p.default.bool,hideRowOnExpand:p.default.bool},t.default=x},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var i=Object.assign||function(e){for(var t=1;t0?o[0].order:void 0}}Object.defineProperty(t,"__esModule",{value:!0});var u=function(){function e(e,t){for(var n=0;nl&&(l=e.row);for(var t=0;t1?"":void 0}).filter(function(e){return"undefined"!=typeof e}).join(n)+"\n"},f=i;f<=l;f++)u(f);return t=t.filter(function(e){return void 0!==e.field}),e.map(function(e){t.map(function(o,a){var l=o.field,i=o.format,u=o.extraData,f=o.type,c="undefined"!=typeof i?i(e[l],e,u):e[l];c=f===s.default.CSV_NUMBER_TYPE?Number(c):'"'+c+'"';var d="undefined"!=typeof c?c:"";r+=d,a+1",">=","<","<=","!="],m=function(e){function t(e){r(this,t);var n=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return n.dateComparators=n.props.dateComparators||y,n.filter=n.filter.bind(n),n.onChangeComparator=n.onChangeComparator.bind(n),n}return l(t,e),s(t,[{key:"setDefaultDate",value:function(){var e="",t=this.props.defaultValue;return t&&t.date&&(e=i(new Date(t.date))),e}},{key:"onChangeComparator",value:function(e){var t=this.inputDate.value,n=e.target.value;""!==t&&(t=new Date(t),this.props.filterHandler({date:t,comparator:n},h.default.FILTER_TYPE.DATE))}},{key:"getComparatorOptions",value:function(){var e=[];e.push(f.default.createElement("option",{key:"-1"}));for(var t=0;t",">=","<","<=","!="],b=function(e){function t(e){r(this,t);var n=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return n.numberComparators=n.props.numberComparators||m,n.timeout=null,n.state={isPlaceholderSelected:void 0===n.props.defaultValue||void 0===n.props.defaultValue.number||n.props.options&&n.props.options.indexOf(n.props.defaultValue.number)===-1},n.onChangeNumber=n.onChangeNumber.bind(n),n.onChangeNumberSet=n.onChangeNumberSet.bind(n),n.onChangeComparator=n.onChangeComparator.bind(n),n}return l(t,e),i(t,[{key:"onChangeNumber",value:function(e){var t=this,n=this.numberFilterComparator.value;if(""!==n){this.timeout&&clearTimeout(this.timeout);var o=e.target.value;this.timeout=setTimeout(function(){t.props.filterHandler({number:o,comparator:n},y.default.FILTER_TYPE.NUMBER)},this.props.delay)}}},{key:"onChangeNumberSet",value:function(e){var t=this.numberFilterComparator.value,n=e.target.value;this.setState(function(){return{isPlaceholderSelected:""===n}}),""!==t&&this.props.filterHandler({number:n,comparator:t},y.default.FILTER_TYPE.NUMBER)}},{key:"onChangeComparator",value:function(e){var t=this.numberFilter.value,n=e.target.value;""!==t&&this.props.filterHandler({number:t,comparator:n},y.default.FILTER_TYPE.NUMBER)}},{key:"cleanFiltered",value:function(){var e=this.props.defaultValue?this.props.defaultValue.number:"",t=this.props.defaultValue?this.props.defaultValue.comparator:"";this.setState(function(){return{isPlaceholderSelected:""===e}}),this.numberFilterComparator.value=t,this.numberFilter.value=e,this.props.filterHandler({number:e,comparator:t},y.default.FILTER_TYPE.NUMBER)}},{key:"applyFilter",value:function(e){var t=e.number,n=e.comparator;this.setState(function(){return{isPlaceholderSelected:""===t}}),this.numberFilterComparator.value=n,this.numberFilter.value=t,this.props.filterHandler({number:t,comparator:n},y.default.FILTER_TYPE.NUMBER)}},{key:"getComparatorOptions",value:function(){var e=[],t=this.props.withoutEmptyComparatorOption;t||e.push(u.default.createElement("option",{key:"-1"}));for(var n=0;nn.lastPage?n.lastPage:a+1:e===i?n.lastPage:e===s?o:parseInt(e,10),f&&n.closeDropDown(),e!==a&&n.props.changePage(e,u)},n.changeSizePerPage=function(e){var t="string"==typeof e?parseInt(e,10):e,o=n.props.currPage;t!==n.props.sizePerPage&&(n.totalPages=Math.ceil(n.props.dataSize/t),n.lastPage=n.props.pageStartIndex+n.totalPages-1,o>n.lastPage&&(o=n.lastPage),n.props.changePage(o,t),n.props.onSizePerPageList&&n.props.onSizePerPageList(t)),n.closeDropDown()},n.toggleDropDown=function(){n.setState(function(){return{open:!n.state.open}})},n.closeDropDown=function(){n.setState(function(){return{open:!1}})},n.state={open:n.props.open},n}return l(t,e),s(t,[{key:"UNSAFE_componentWillReceiveProps",value:function(){var e=this.props.keepSizePerPageState;e||this.closeDropDown()}},{key:"render",value:function(){var e=this.props,t=e.currPage,n=e.dataSize,o=e.sizePerPage,r=e.sizePerPageList,a=e.paginationShowsTotal,l=e.pageStartIndex,i=e.paginationPanel,s=e.hidePageListOnlyOnePage;this.totalPages=Math.ceil(n/o),this.lastPage=this.props.pageStartIndex+this.totalPages-1;var u=this.makePage(O.default.isFunction(i)),c=this.makeDropDown(),d=Math.abs(E.default.PAGE_START_INDEX-l),p=(t-l)*o;p=0===n?0:p+1;var h=Math.min(o*(t+d)-1,n);h>=n&&h--;var y=a?f.default.createElement("span",null,"Showing rows ",p," to ",h+1," of ",n):null;O.default.isFunction(a)&&(y=a(p,h+1,n));var m=i&&i({currPage:t,sizePerPage:o,sizePerPageList:r,pageStartIndex:l,totalPages:this.totalPages,changePage:this.changePage,toggleDropDown:this.toggleDropDown,changeSizePerPage:this.changeSizePerPage,components:{totalText:y,sizePerPageDropdown:c,pageList:u}}),b=s&&1===this.totalPages?"none":"block";return f.default.createElement("div",{className:"row",style:{marginTop:15}},m||[f.default.createElement("div",{key:"paging-left",className:"col-md-6 col-xs-6 col-sm-6 col-lg-6"},y,r.length>1?c:null),f.default.createElement("div",{key:"paging-right",style:{display:b},className:"col-md-6 col-xs-6 col-sm-6 col-lg-6"},u)])}},{key:"makeDropDown",value:function(){var e=this,t=void 0,n=void 0,o="",r=this.props,a=r.sizePerPageDropDown,l=r.hideSizePerPage,s=r.sizePerPage,u=r.sizePerPageList;if(a){if(t=a({open:this.state.open,hideSizePerPage:l,currSizePerPage:String(s),sizePerPageList:u,toggleDropDown:this.toggleDropDown,changeSizePerPage:this.changeSizePerPage,onBlur:this.closeDropDown}),t.type.name!==v.default.name)return t;n=t.props}if(n||!t){var c=O.default.isBootstrap4(this.props.version),d=u.map(function(t){var n=t.text||t,r=t.value||t;return s===r&&(o=n),c?f.default.createElement("a",{href:"#",tabIndex:"-1",key:n,className:"dropdown-item",onMouseDown:function(t){t.preventDefault(),e.changeSizePerPage(r)}},n):f.default.createElement("li",{key:n,role:"presentation",className:"dropdown-item"},f.default.createElement("a",{role:"menuitem",tabIndex:"-1",href:"#","data-page":r,onMouseDown:function(t){t.preventDefault(),e.changeSizePerPage(r)}},n))});t=f.default.createElement(v.default,i({open:this.state.open,hidden:l,currSizePerPage:String(o),options:d,onClick:this.toggleDropDown,onBlur:this.closeDropDown,isBootstrap4:c},n))}return t}},{key:"makePage",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],n=this.getPages(),o=function(e,t){var n=t.currPage,o=t.pageStartIndex,r=t.firstPage,a=t.prePage;return n===o&&(e===r||e===a)},r=function(t,n){var o=n.currPage,r=n.nextPage,a=n.lastPage;return o===e.lastPage&&(t===r||t===a)},a=n.filter(function(e){return!!this.props.alwaysShowAllBtns||!o(e,this.props)&&!r(e,this.props)},this).map(function(e,t){var n=e===this.props.currPage,a=!(!o(e,this.props)&&!r(e,this.props)),l=e+"",i=e;return e===this.props.nextPage?(l=this.props.nextPageTitle,i=this.props.currPage+1):e===this.props.prePage?(l=this.props.prePageTitle,i=this.props.currPage-1):e===this.props.firstPage?(l=this.props.firstPageTitle,i=this.props.pageStartIndex):e===this.props.lastPage&&(l=this.props.lastPageTitle,i=this.getLastPage()),f.default.createElement(m.default,{key:t,title:l,changePage:this.changePage,active:n,disable:a,pageNumber:i},e)},this),l=(0,h.default)(t?null:"react-bootstrap-table-page-btns-ul","pagination");return f.default.createElement("ul",{className:l},a)}},{key:"getLastPage",value:function(){return this.lastPage}},{key:"getPages",value:function(){var e=void 0,t=this.totalPages;if(t<=0)return[];var n=Math.max(this.props.currPage-Math.floor(this.props.paginationSize/2),this.props.pageStartIndex);t=n+this.props.paginationSize-1,t>this.lastPage&&(t=this.lastPage,n=t-this.props.paginationSize+1),e=n!==this.props.pageStartIndex&&this.totalPages>this.props.paginationSize&&this.props.withFirstAndLast?[this.props.firstPage,this.props.prePage]:this.totalPages>1||this.props.alwaysShowAllBtns?[this.props.prePage]:[];for(var o=n;o<=t;o++)o>=this.props.pageStartIndex&&e.push(o);return t<=this.lastPage&&e.length>1&&e.push(this.props.nextPage),t!==this.lastPage&&this.props.withFirstAndLast&&e.push(this.props.lastPage),e}}]),t}(u.Component);w.propTypes={currPage:d.default.number,sizePerPage:d.default.number,dataSize:d.default.number,changePage:d.default.func,sizePerPageList:d.default.array,paginationShowsTotal:d.default.oneOfType([d.default.bool,d.default.func]),paginationSize:d.default.number,onSizePerPageList:d.default.func,prePage:d.default.any,nextPage:d.default.any,firstPage:d.default.any,lastPage:d.default.any,pageStartIndex:d.default.number,hideSizePerPage:d.default.bool,alwaysShowAllBtns:d.default.bool,withFirstAndLast:d.default.bool,sizePerPageDropDown:d.default.func,paginationPanel:d.default.func,prePageTitle:d.default.string,nextPageTitle:d.default.string,firstPageTitle:d.default.string,lastPageTitle:d.default.string,hidePageListOnlyOnePage:d.default.bool,keepSizePerPageState:d.default.bool},w.defaultProps={sizePerPage:E.default.SIZE_PER_PAGE,pageStartIndex:E.default.PAGE_START_INDEX},t.default=w},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0}),t.TableDataStore=void 0;var a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l=function(){function e(e,t){for(var n=0;n1){for(var o=this.sortList.length-1,r=!1;o>=0;o--)if(this.sortList[o].sortField===t){r=!0;break}r&&(o>0?this.sortList=this.sortList.slice(0,o):this.sortList=this.sortList.slice(1)),this.sortList.unshift(n),this.sortList=this.sortList.slice(0,this.multiColumnSort)}else this.sortList=[n]}}},{key:"cleanSortInfo",value:function(){this.sortList=[]}},{key:"setSelectedRowKey",value:function(e){this.selected=e}},{key:"getRowByKey",value:function(e){var t=this,n=[];if(!e||0===e.length)return n;for(var o=function(o){var r=t.data[o];e.indexOf(r[t.keyField])>-1&&(e=e.filter(function(e){return e!==r[t.keyField]}),n.push(r))},r=0;r0&&this.sort()}},{key:"ignoreNonSelected",value:function(){var e=this;this.showOnlySelected=!this.showOnlySelected,this.showOnlySelected?(this.isOnFilter=!0,this.filteredData=this.data.filter(function(t){var n=e.selected.find(function(n){return t[e.keyField]===n});return"undefined"!=typeof n})):this.isOnFilter=!1}},{key:"sort",value:function(){var e=this.getCurrentDisplayData();return e=this._sort(e),this}},{key:"page",value:function(e,t){return this.pageObj.end=e*t-1,this.pageObj.start=this.pageObj.end-(t-1),this}},{key:"edit",value:function(e,t,n){var o=this.getCurrentDisplayData(),r=void 0;return this.enablePagination?(o[this.pageObj.start+t][n]=e,r=o[this.pageObj.start+t][this.keyField]):(o[t][n]=e,r=o[t][this.keyField]),this.isOnFilter&&(this.data.forEach(function(t){t[this.keyField]===r&&(t[n]=e)},this),null!==this.filterObj&&this.filter(this.filterObj),null!==this.searchText&&this.search(this.searchText)),this}},{key:"addAtBegin",value:function(e){if(!e[this.keyField]||""===e[this.keyField].toString())throw new Error(this.keyField+" can't be empty value.");var t=this.getCurrentDisplayData();t.forEach(function(t){if(t[this.keyField].toString()===e[this.keyField].toString())throw new Error(this.keyField+" "+e[this.keyField]+" already exists")},this),t.unshift(e),this.isOnFilter&&this.data.unshift(e),this._refresh(!1)}},{key:"add",value:function(e){var t=this.isValidKey(e[this.keyField]);if(t)throw new Error(t);var n=this.getCurrentDisplayData();n.push(e),this.isOnFilter&&this.data.push(e),this._refresh(!1)}},{key:"remove",value:function(e){var t=this,n=this.getCurrentDisplayData(),o=n.filter(function(n){return e.indexOf(n[t.keyField])===-1});this.isOnFilter?(this.data=this.data.filter(function(n){return e.indexOf(n[t.keyField])===-1}),this.filteredData=o):this.data=o}},{key:"filter",value:function(e){if(0===Object.keys(e).length)this.filteredData=null,this.isOnFilter=!1,this.filterObj=null,this.searchText&&this._search(this.data);else{var t=this.data;this.filterObj=e,this.searchText&&(this._search(t),t=this.filteredData),this._filter(t)}}},{key:"filterNumber",value:function(e,t,n){var o=!0;switch(n){case"=":e!=t&&(o=!1);break;case">":e<=t&&(o=!1);break;case">=":e=t&&(o=!1);break;case"<=":e>t&&(o=!1);break;case"!=":e==t&&(o=!1);break;default:console.error("Number comparator provided is not supported")}return o}},{key:"filterDate",value:function e(t,n,o){if(!t)return!1;var e=n.getDate(),r=n.getMonth(),l=n.getFullYear();"object"!==("undefined"==typeof t?"undefined":a(t))&&(t=new Date(t));var i=t.getDate(),s=t.getMonth(),u=t.getFullYear(),f=!0;switch(o){case"=":e===i&&r===s&&l===u||(f=!1);break;case">":t<=n&&(f=!1);break;case">=":u=n&&(f=!1);break;case"<=":u>l?f=!1:u===l&&s>r?f=!1:u===l&&s===r&&i>e&&(f=!1);break;case"!=":e===i&&r===s&&l===u&&(f=!1);break;default:console.error("Date comparator provided is not supported")}return f}},{key:"filterRegex",value:function(e,t){try{return new RegExp(t,"i").test(e)}catch(e){return!0}}},{key:"filterCustom",value:function(e,t,n,o){return null!==n&&"object"===("undefined"==typeof n?"undefined":a(n))?n.callback(e,n.callbackParameters):this.filterText(e,t,o)}},{key:"filterText",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments[1],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:s.default.FILTER_COND_LIKE;return e=null===e?"":e.toString(),t=t.toString(),n===s.default.FILTER_COND_EQ?e===t:(e=e.toLowerCase(),t=t.toLowerCase(),!(e.indexOf(t)===-1))}},{key:"filterArray",value:function(e,t){return t.indexOf(e)>-1}},{key:"search",value:function(e){if(""===e.trim())this.filteredData=null,this.isOnFilter=!1,this.searchText=null,this.filterObj&&this._filter(this.data);else{var t=this.data;this.searchText=e,this.filterObj&&(this._filter(t),t=this.filteredData),this._search(t)}}},{key:"_filter",value:function(e){var t=this,n=this.filterObj;this.filteredData=e.filter(function(e,o){var r=!0,l=void 0;for(var i in n){var u=e[i];switch(null!==u&&void 0!==u||(u=""),n[i].type){case s.default.FILTER_TYPE.NUMBER:l=n[i].value.number;break;case s.default.FILTER_TYPE.CUSTOM:l="object"===a(n[i].value)?void 0:"string"==typeof n[i].value?n[i].value.toLowerCase():n[i].value;break;case s.default.FILTER_TYPE.DATE:l=n[i].value.date;break;case s.default.FILTER_TYPE.REGEX:l=n[i].value;break;case s.default.FILTER_TYPE.ARRAY:if(l=n[i].value,!Array.isArray(l))throw new Error("Value must be an Array");break;default:
+l=n[i].value,void 0===l&&(l=n[i])}var f=void 0,c=void 0,d=void 0,p=void 0;switch(t.colInfos[i]&&(f=t.colInfos[i].format,c=t.colInfos[i].filterFormatted,d=t.colInfos[i].formatExtraData,p=t.colInfos[i].filterValue,c&&f?u=f(e[i],e,d,o):p&&(u=p(e[i],e))),n[i].type){case s.default.FILTER_TYPE.NUMBER:r=t.filterNumber(u,l,n[i].value.comparator);break;case s.default.FILTER_TYPE.DATE:r=t.filterDate(u,l,n[i].value.comparator);break;case s.default.FILTER_TYPE.REGEX:r=t.filterRegex(u,l);break;case s.default.FILTER_TYPE.CUSTOM:var h=n[i].props?n[i].props.cond:s.default.FILTER_COND_LIKE;r=t.filterCustom(u,l,n[i].value,h);break;case s.default.FILTER_TYPE.ARRAY:r=t.filterArray(u,l);break;default:n[i].type===s.default.FILTER_TYPE.SELECT&&c&&c&&f&&(l=f(l,e,d,o));var y=n[i].props?n[i].props.cond:s.default.FILTER_COND_LIKE;r=t.filterText(u,l,y)}if(!r)break}return r}),this.isOnFilter=!0}},{key:"_search",value:function(e){var t=this,n=void 0;n=this.multiColumnSearch||!this.strictSearch?this.searchText.trim().toLowerCase().split(/\s+/):[this.searchText.toLowerCase()];var o=n.length,r=o>1,a=r&&!this.strictSearch&&this.multiColumnSearch,l=r&&!this.strictSearch&&!this.multiColumnSearch;this.filteredData=e.filter(function(e,i){for(var s=Object.keys(e),u=r?n.slice():n,f=0,c=s.length;fu.length&&(u=n.slice());for(var g=u.length-1;g>-1;g--)if(v.indexOf(u[g])!==-1){if(a||1===u.length)return!0;u.splice(g,1)}else if(!t.multiColumnSearch)break}}}return!1}),this.isOnFilter=!0}},{key:"_sort",value:function(e){var t=this;return 0===this.sortList.length||"undefined"==typeof this.sortList[0]?e:(e.sort(function(e,n){for(var o=0,r=0;rd?-1:cd?1:0}if(0!==o)return o}return o}),e)}},{key:"getDataIgnoringPagination",value:function(){return this.getCurrentDisplayData()}},{key:"get",value:function(){var e=this.getCurrentDisplayData();if(0===e.length)return e;var t="function"==typeof this.remote?this.remote(s.default.REMOTE)[s.default.REMOTE_PAGE]:this.remote;if(t||!this.enablePagination)return e;for(var n=[],o=this.pageObj.start;o<=this.pageObj.end&&(n.push(e[o]),o+1!==e.length);o++);return n}},{key:"getKeyField",value:function(){return this.keyField}},{key:"getDataNum",value:function(){return this.getCurrentDisplayData().length}},{key:"isChangedPage",value:function(){return!(!this.pageObj.start||!this.pageObj.end)}},{key:"isEmpty",value:function(){return 0===this.data.length||null===this.data||void 0===this.data}},{key:"getAllRowkey",value:function(){var e=this;return this.data.map(function(t){return t[e.keyField]})}}]),e}();t.TableDataStore=u},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){var n={};for(var o in e)t.indexOf(o)>=0||Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o]);return n}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;t0&&(n=f.default.cloneElement(n,p))}else if(n&&n.type.name!==h.default.name){var y=n.props.className;"undefined"!=typeof y&&y.indexOf("modal-header")!==-1||(n=f.default.createElement("div",{className:"modal-header"},n))}if(o&&o.type.name===m.default.name){var b={};o.props.onModalClose||(b.onModalClose=c),o.props.onSave||(b.onSave=this.handleSave),Object.keys(b).length>0&&(o=f.default.cloneElement(o,b))}else if(o&&o.type.name!==m.default.name){var E=o.props.className;"undefined"!=typeof E&&E.indexOf("modal-footer")!==-1||(o=f.default.createElement("div",{className:"modal-footer"},o))}return f.default.createElement("div",{className:"modal-content "+g},n||f.default.createElement(h.default,{version:this.props.version,className:"react-bs-table-inser-modal-header",onModalClose:c}),r||f.default.createElement(v.default,i({ref:function(t){return e.body=t}},d)),o||f.default.createElement(m.default,{className:"react-bs-table-inser-modal-footer",onModalClose:c,onSave:this.handleSave}))}}]),t}(u.Component);t.default=E,E.propTypes={version:d.default.string.isRequired,columns:d.default.array.isRequired,validateState:d.default.object.isRequired,ignoreEditable:d.default.bool,headerComponent:d.default.func,bodyComponent:d.default.func,footerComponent:d.default.func,onModalClose:d.default.func,onSave:d.default.func},E.defaultProps={}},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){var n=[],o=!0,r=!1,a=void 0;try{for(var l,i=e[Symbol.iterator]();!(o=(l=i.next()).done)&&(n.push(l.value),!t||n.length!==t);o=!0);}catch(e){r=!0,a=e}finally{try{!o&&i.return&&i.return()}finally{if(r)throw a}}return n}return function(t,n){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u=function(){function e(e,t){for(var n=0;n0&&this._events[e].length>r&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),"function"==typeof console.trace&&console.trace())}return this},n.prototype.on=n.prototype.addListener,n.prototype.once=function(e,t){function n(){this.removeListener(e,n),r||(r=!0,t.apply(this,arguments))}if(!o(t))throw TypeError("listener must be a function");var r=!1;return n.listener=t,this.on(e,n),this},n.prototype.removeListener=function(e,t){var n,r,l,i;if(!o(t))throw TypeError("listener must be a function");if(!this._events||!this._events[e])return this;if(n=this._events[e],l=n.length,r=-1,n===t||o(n.listener)&&n.listener===t)delete this._events[e],this._events.removeListener&&this.emit("removeListener",e,t);else if(a(n)){for(i=l;i-- >0;)if(n[i]===t||n[i].listener&&n[i].listener===t){r=i;break}if(r<0)return this;1===n.length?(n.length=0,delete this._events[e]):n.splice(r,1),this._events.removeListener&&this.emit("removeListener",e,t)}return this},n.prototype.removeAllListeners=function(e){var t,n;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[e]&&delete this._events[e],this;if(0===arguments.length){for(t in this._events)"removeListener"!==t&&this.removeAllListeners(t);return this.removeAllListeners("removeListener"),this._events={},this}if(n=this._events[e],o(n))this.removeListener(e,n);else for(;n.length;)this.removeListener(e,n[n.length-1]);return delete this._events[e],this},n.prototype.listeners=function(e){var t;return t=this._events&&this._events[e]?o(this._events[e])?[this._events[e]]:this._events[e].slice():[]},n.listenerCount=function(e,t){var n;return n=e._events&&e._events[t]?o(e._events[t])?1:e._events[t].length:0}},function(e,t,n){var o;/*!
Copyright (c) 2015 Jed Watson.
Based on code that is Copyright 2013-2015, Facebook, Inc.
All rights reserved.
@@ -29,5 +29,21 @@ r=t.filterRegex(u,l);break;case s.default.FILTER_TYPE.CUSTOM:var h=n[i].props?n[
(c) Sindre Sorhus
@license MIT
*/
-"use strict";function n(e){if(null===e||void 0===e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function o(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;var o=Object.getOwnPropertyNames(t).map(function(e){return t[e]});if("0123456789"!==o.join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach(function(e){r[e]=e}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}var r=Object.getOwnPropertySymbols,a=Object.prototype.hasOwnProperty,l=Object.prototype.propertyIsEnumerable;e.exports=o()?Object.assign:function(e,t){for(var o,i,s=n(e),u=1;u>",F={array:p("array"),bool:p("boolean"),func:p("function"),number:p("number"),object:p("object"),string:p("string"),symbol:p("symbol"),any:h(),arrayOf:y,element:m(),instanceOf:b,node:C(),objectOf:g,oneOf:v,oneOfType:E,shape:O,exact:w};return d.prototype=Error.prototype,F.checkPropTypes=s,F.PropTypes=F,F}}).call(t,n(6))},function(e,t,n){"use strict";function o(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function s(e){return e()}Object.defineProperty(t,"__esModule",{value:!0}),t.bodyOpenClassName=t.portalClassName=void 0;var u=Object.assign||function(e){for(var t=1;t0?n.closeWithTimeout():n.closeWithoutTimeout()},n.focusContent=function(){return n.content&&!n.contentHasFocus()&&n.content.focus()},n.closeWithTimeout=function(){var e=Date.now()+n.props.closeTimeoutMS;n.setState({beforeClose:!0,closesAt:e},function(){n.closeTimer=setTimeout(n.closeWithoutTimeout,n.state.closesAt-Date.now())})},n.closeWithoutTimeout=function(){n.setState({beforeClose:!1,isOpen:!1,afterOpen:!1,closesAt:null},n.afterClose)},n.handleKeyDown=function(e){e.keyCode===R&&(0,g.default)(n.content,e),n.props.shouldCloseOnEsc&&e.keyCode===k&&(e.preventDefault(),n.requestClose(e))},n.handleOverlayOnClick=function(e){null===n.shouldClose&&(n.shouldClose=!0),n.shouldClose&&n.props.shouldCloseOnOverlayClick&&(n.ownerHandlesClose()?n.requestClose(e):n.focusContent()),n.shouldClose=null,n.moveFromContentToOverlay=null},n.handleOverlayOnMouseUp=function(){null===n.moveFromContentToOverlay&&(n.shouldClose=!1)},n.handleContentOnMouseUp=function(){n.shouldClose=!1},n.handleOverlayOnMouseDown=function(e){n.props.shouldCloseOnOverlayClick||e.target!=n.overlay||e.preventDefault(),n.moveFromContentToOverlay=!1},n.handleContentOnClick=function(){n.shouldClose=!1},n.handleContentOnMouseDown=function(){n.shouldClose=!1,n.moveFromContentToOverlay=!1},n.requestClose=function(e){return n.ownerHandlesClose()&&n.props.onRequestClose(e)},n.ownerHandlesClose=function(){return n.props.onRequestClose},n.shouldBeClosed=function(){return!n.state.isOpen&&!n.state.beforeClose},n.contentHasFocus=function(){return document.activeElement===n.content||n.content.contains(document.activeElement)},n.buildClassName=function(e,t){var o="object"===("undefined"==typeof t?"undefined":f(t))?t:{base:x[e],afterOpen:x[e]+"--after-open",beforeClose:x[e]+"--before-close"},r=o.base;return n.state.afterOpen&&(r=r+" "+o.afterOpen),n.state.beforeClose&&(r=r+" "+o.beforeClose),"string"==typeof t&&t?r+" "+t:r},n.ariaAttributes=function(e){return Object.keys(e).reduce(function(t,n){return t["aria-"+n]=e[n],t},{})},n.state={afterOpen:!1,beforeClose:!1},n.shouldClose=null,n.moveFromContentToOverlay=null,n}return s(t,e),d(t,[{key:"componentDidMount",value:function(){this.props.isOpen&&(this.setFocusAfterRender(!0),this.open())}},{key:"componentWillReceiveProps",value:function(e){"production"!==o.env.NODE_ENV&&e.bodyOpenClassName!==this.props.bodyOpenClassName&&console.warn('React-Modal: "bodyOpenClassName" prop has been modified. This may cause unexpected behavior when multiple modals are open.'),!this.props.isOpen&&e.isOpen?(this.setFocusAfterRender(!0),this.open()):this.props.isOpen&&!e.isOpen&&this.close()}},{key:"componentDidUpdate",value:function(){this.focusAfterRender&&(this.focusContent(),this.setFocusAfterRender(!1))}},{key:"componentWillUnmount",value:function(){this.afterClose(),clearTimeout(this.closeTimer)}},{key:"beforeOpen",value:function(){var e=this.props,t=e.appElement,n=e.ariaHideApp,o=e.bodyOpenClassName;S.add(o),n&&C.hide(t)}},{key:"render",value:function(){var e=this.props,t=e.className,n=e.overlayClassName,o=e.defaultStyles,r=t?{}:o.content,a=n?{}:o.overlay;return this.shouldBeClosed()?null:p.default.createElement("div",{ref:this.setOverlayRef,className:this.buildClassName("overlay",n),style:u({},a,this.props.style.overlay),onClick:this.handleOverlayOnClick,onMouseDown:this.handleOverlayOnMouseDown,onMouseUp:this.handleOverlayOnMouseUp,"aria-modal":"true"},p.default.createElement("div",u({ref:this.setContentRef,style:u({},r,this.props.style.content),className:this.buildClassName("content",t),tabIndex:"-1",onKeyDown:this.handleKeyDown,onMouseDown:this.handleContentOnMouseDown,onMouseUp:this.handleContentOnMouseUp,onClick:this.handleContentOnClick,role:this.props.role,"aria-label":this.props.contentLabel},this.ariaAttributes(this.props.aria||{})),this.props.children))}}]),t}(c.Component);N.defaultProps={style:{overlay:{},content:{}}},N.propTypes={isOpen:y.default.bool.isRequired,defaultStyles:y.default.shape({content:y.default.object,overlay:y.default.object}),style:y.default.shape({content:y.default.object,overlay:y.default.object}),className:y.default.oneOfType([y.default.string,y.default.object]),overlayClassName:y.default.oneOfType([y.default.string,y.default.object]),bodyOpenClassName:y.default.string,ariaHideApp:y.default.bool,appElement:y.default.instanceOf(P.default),onAfterOpen:y.default.func,onRequestClose:y.default.func,closeTimeoutMS:y.default.number,shouldFocusAfterRender:y.default.bool,shouldCloseOnOverlayClick:y.default.bool,shouldReturnFocusAfterClose:y.default.bool,role:y.default.string,contentLabel:y.default.string,aria:y.default.object,children:y.default.node,shouldCloseOnEsc:y.default.bool},t.default=N,e.exports=t.default}).call(t,n(6))},function(e,t,n){"use strict";function o(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}function r(e){e.split(" ").map(i.add).forEach(function(e){return document.body.classList.add(e)})}function a(e){var t=i.get();e.split(" ").map(i.remove).filter(function(e){return 0===t[e]}).forEach(function(e){return document.body.classList.remove(e)})}Object.defineProperty(t,"__esModule",{value:!0}),t.add=r,t.remove=a;var l=n(28),i=o(l)},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(){y=!0}function a(){if(y){if(y=!1,!h)return;setTimeout(function(){if(!h.contains(document.activeElement)){var e=(0,c.default)(h)[0]||h;e.focus()}},0)}}function l(){p.push(document.activeElement)}function i(){var e=null;try{return e=p.pop(),void e.focus()}catch(t){console.warn(["You tried to return focus to",e,"but it is not in the DOM anymore"].join(" "))}}function s(){p.length>0&&p.pop()}function u(e){h=e,window.addEventListener?(window.addEventListener("blur",r,!1),document.addEventListener("focus",a,!0)):(window.attachEvent("onBlur",r),document.attachEvent("onFocus",a))}function f(){h=null,window.addEventListener?(window.removeEventListener("blur",r),document.removeEventListener("focus",a)):(window.detachEvent("onBlur",r),document.detachEvent("onFocus",a))}Object.defineProperty(t,"__esModule",{value:!0}),t.handleBlur=r,t.handleFocus=a,t.markForFocusLater=l,t.returnFocus=i,t.popWithoutFocus=s,t.setupScopedFocus=u,t.teardownScopedFocus=f;var d=n(30),c=o(d),p=[],h=null,y=!1},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){var n=(0,l.default)(e);if(!n.length)return void t.preventDefault();var o=t.shiftKey,r=n[0],a=n[n.length-1];if(e!==document.activeElement){var i;if(a!==document.activeElement||o||(i=r),r===document.activeElement&&o&&(i=a),i)return t.preventDefault(),void i.focus();var s=/(\bChrome\b|\bSafari\b)\//.exec(navigator.userAgent),u=null!=s&&"Chrome"!=s[1]&&null==/\biPod\b|\biPad\b/g.exec(navigator.userAgent);if(u){var f=n.indexOf(document.activeElement);f>-1&&(f+=o?-1:1),t.preventDefault(),n[f].focus()}}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var a=n(30),l=o(a);e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var r=n(64),a=o(r);t.default=a.default,e.exports=t.default},function(e,t,n){var o,r,a;!function(l,i){r=[t,n(1),n(31),n(2),n(11),n(12),n(72)],o=i,a="function"==typeof o?o.apply(t,r):o,!(void 0!==a&&(e.exports=a))}(this,function(e,t,n,o,r,a,l){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function s(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function f(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(e,"__esModule",{value:!0});var d=i(t),c=i(n),p=i(o),h=i(r),y=i(a),m=i(l),b=function(){function e(e,t){for(var n=0;ne.props.stack.limit){var o=n[0].id;h.default.dispatch({type:"REMOVE",data:{id:o}}),n=(0,m.default)("right")||[]}e.setState({dataRight:n})})})};this.unsubStoreRight=h.default.subscribe(a);var l=function(){requestAnimationFrame(function(){return requestAnimationFrame(function(){var n=void 0;if(t=(0,m.default)("left")||[],n=t.length,e.props.stack&&e.props.stack.limit&&n>e.props.stack.limit){var o=t[0].id;h.default.dispatch({type:"REMOVE",data:{id:o}}),t=(0,m.default)("left")||[]}e.setState({dataLeft:t})})})};this.unsubStoreLeft=h.default.subscribe(l);var i=function(){requestAnimationFrame(function(){return requestAnimationFrame(function(){var t=void 0;if(o=(0,m.default)("full-top")||[],t=o.length,e.props.stack&&e.props.stack.limit&&t>e.props.stack.limit){var n=o[0].id;h.default.dispatch({type:"REMOVE",data:{id:n}}),o=(0,m.default)("full-top")||[]}e.setState({dataTop:o})})})};this.unsubStoreTop=h.default.subscribe(i);var s=function(){requestAnimationFrame(function(){return requestAnimationFrame(function(){var t=void 0;if(r=(0,m.default)("full-bottom")||[],t=r.length,e.props.stack&&e.props.stack.limit&&t>e.props.stack.limit){var n=r[0].id;h.default.dispatch({type:"REMOVE",data:{id:n}}),r=(0,m.default)("full-bottom")||[]}e.setState({dataBottom:r})})})};this.unsubStoreBottom=h.default.subscribe(s);var u={contentTemplate:this.props.contentTemplate,offset:this.props.offset,message:this.props.message,stack:this.props.stack,html:this.props.html,customFields:this.props.customFields,position:this.props.position||"top-right"};y.default.setGlobalConfig(u)}},{key:"componentWillUnmount",value:function(){this.unsubStoreTop(),this.unsubStoreBottom(),this.unsubStoreLeft(),this.unsubStoreRight()}},{key:"render",value:function(){var e=this,t=function(t,n){var o="alert-key-"+t.id+"-"+t.position,r=t.id,a=y.default.returnFirstDefined(t.condition,"info"),l=y.default.returnFirstDefined(t.message,e.props.message,""),i=y.default.returnFirstDefined(t.position,e.props.position,"top-right"),s=(y.default.returnFirstDefined(t.offset,e.props.offset,0),y.default.returnFirstDefined(t.effect,e.props.effect)),u=t.boxPosition,f=y.default.returnFirstDefined(t.beep,e.props.beep,!1),p=y.default.returnFirstDefined(t.timeout,e.props.timeout,5e3),h=y.default.returnFirstDefined(t.html,e.props.html),m=y.default.returnFirstDefined(t.onClose,e.props.onClose),b=y.default.returnFirstDefined(t.onShow,e.props.onShow),v=y.default.returnFirstDefined(t.customFields,e.props.customFields),g=e.props.contentTemplate;return d.default.createElement(c.default,{key:o,id:r,customFields:v,condition:a,message:l,position:i,effect:s,boxPosition:u,beep:f,timeout:p,html:h,onClose:m,onShow:b,contentTemplate:g})},n=this.state.dataRight.map(t),o=this.state.dataLeft.map(t),r=this.state.dataTop.map(t),a=this.state.dataBottom.map(t);return d.default.createElement("div",{className:"s-alert-wrapper"},n,o,r,a)}}],[{key:"info",value:function(e,t){return g(e,t,"info")}},{key:"error",value:function(e,t){return g(e,t,"error")}},{key:"warning",value:function(e,t){return g(e,t,"warning")}},{key:"success",value:function(e,t){return g(e,t,"success")}},{key:"close",value:function(e){h.default.dispatch({type:"REMOVE",data:{id:e}})}},{key:"closeAll",value:function(){h.default.dispatch({type:"REMOVEALL"})}}]),t}(d.default.Component);E.propTypes={message:p.default.string,position:p.default.string,offset:p.default.number,stack:p.default.oneOfType([p.default.bool,p.default.object]),effect:p.default.string,beep:p.default.oneOfType([p.default.string,p.default.object,p.default.bool]),timeout:p.default.oneOfType([p.default.oneOf(["none"]),p.default.number]),html:p.default.bool,onClose:p.default.func,onShow:p.default.func,customFields:p.default.object,contentTemplate:p.default.func},e.default=E})},function(e,t,n){var o,r,a;!function(l,i){r=[t,n(1),n(2)],o=i,a="function"==typeof o?o.apply(t,r):o,!(void 0!==a&&(e.exports=a))}(this,function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(e,"__esModule",{value:!0});var i=o(t),s=o(n),u=function(){function e(e,t){for(var n=0;n2?o-2:0);for(var r=2;r1?"Invalid arguments supplied to oneOf, expected an array, got "+arguments.length+" arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).":"Invalid argument supplied to oneOf, expected an array."),o)}function C(e){function t(t,n,o,r,a){if("function"!=typeof e)return new d("Property `"+a+"` of component `"+o+"` has invalid PropType notation inside objectOf.");var i=t[n],u=x(i);if("object"!==u)return new d("Invalid "+r+" `"+a+"` of type "+("`"+u+"` supplied to `"+o+"`, expected an object."));for(var f in i)if(s(i,f)){var c=e(i,f,o,r,a+"."+f,l);if(c instanceof Error)return c}return null}return p(t)}function O(e){function n(t,n,o,r,a){for(var i=0;i>",A={array:h("array"),bool:h("boolean"),func:h("function"),number:h("number"),object:h("object"),string:h("string"),symbol:h("symbol"),any:y(),arrayOf:m,element:b(),elementType:v(),instanceOf:g,node:w(),objectOf:C,oneOf:E,oneOfType:O,shape:S,exact:T};return d.prototype=Error.prototype,A.checkPropTypes=i,A.resetWarningCache=i.resetWarningCache,A.PropTypes=A,A}}).call(t,n(6))},function(e,t,n){(function(e){/** @license React v16.13.1
+ * react-is.development.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";"production"!==e.env.NODE_ENV&&!function(){function e(e){return"string"==typeof e||"function"==typeof e||e===g||e===T||e===C||e===E||e===P||e===x||"object"==typeof e&&null!==e&&(e.$$typeof===k||e.$$typeof===R||e.$$typeof===O||e.$$typeof===w||e.$$typeof===_||e.$$typeof===F||e.$$typeof===j||e.$$typeof===I||e.$$typeof===N)}function n(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case b:var n=e.type;switch(n){case S:case T:case g:case C:case E:case P:return n;default:var o=n&&n.$$typeof;switch(o){case w:case _:case k:case R:case O:return o;default:return t}}case v:return t}}}function o(e){return X||(X=!0,console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")),r(e)||n(e)===S}function r(e){return n(e)===T}function a(e){return n(e)===w}function l(e){return n(e)===O}function i(e){return"object"==typeof e&&null!==e&&e.$$typeof===b}function s(e){return n(e)===_}function u(e){return n(e)===g}function f(e){return n(e)===k}function c(e){return n(e)===R}function d(e){return n(e)===v}function p(e){return n(e)===C}function h(e){return n(e)===E}function y(e){return n(e)===P}var m="function"==typeof Symbol&&Symbol.for,b=m?Symbol.for("react.element"):60103,v=m?Symbol.for("react.portal"):60106,g=m?Symbol.for("react.fragment"):60107,E=m?Symbol.for("react.strict_mode"):60108,C=m?Symbol.for("react.profiler"):60114,O=m?Symbol.for("react.provider"):60109,w=m?Symbol.for("react.context"):60110,S=m?Symbol.for("react.async_mode"):60111,T=m?Symbol.for("react.concurrent_mode"):60111,_=m?Symbol.for("react.forward_ref"):60112,P=m?Symbol.for("react.suspense"):60113,x=m?Symbol.for("react.suspense_list"):60120,R=m?Symbol.for("react.memo"):60115,k=m?Symbol.for("react.lazy"):60116,N=m?Symbol.for("react.block"):60121,F=m?Symbol.for("react.fundamental"):60117,j=m?Symbol.for("react.responder"):60118,I=m?Symbol.for("react.scope"):60119,A=S,D=T,M=w,L=O,B=b,V=_,H=g,U=k,W=R,z=v,G=C,K=E,Y=P,X=!1;t.AsyncMode=A,t.ConcurrentMode=D,t.ContextConsumer=M,t.ContextProvider=L,t.Element=B,t.ForwardRef=V,t.Fragment=H,t.Lazy=U,t.Memo=W,t.Portal=z,t.Profiler=G,t.StrictMode=K,t.Suspense=Y,t.isAsyncMode=o,t.isConcurrentMode=r,t.isContextConsumer=a,t.isContextProvider=l,t.isElement=i,t.isForwardRef=s,t.isFragment=u,t.isLazy=f,t.isMemo=c,t.isPortal=d,t.isProfiler=p,t.isStrictMode=h,t.isSuspense=y,t.isValidElementType=e,t.typeOf=n}()}).call(t,n(6))},function(e,t){/** @license React v16.13.1
+ * react-is.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 n(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case a:switch(e=e.type){case d:case p:case i:case u:case s:case y:return e;default:switch(e=e&&e.$$typeof){case c:case h:case v:case b:case f:return e;default:return t}}case l:return t}}}function o(e){return n(e)===p}var r="function"==typeof Symbol&&Symbol.for,a=r?Symbol.for("react.element"):60103,l=r?Symbol.for("react.portal"):60106,i=r?Symbol.for("react.fragment"):60107,s=r?Symbol.for("react.strict_mode"):60108,u=r?Symbol.for("react.profiler"):60114,f=r?Symbol.for("react.provider"):60109,c=r?Symbol.for("react.context"):60110,d=r?Symbol.for("react.async_mode"):60111,p=r?Symbol.for("react.concurrent_mode"):60111,h=r?Symbol.for("react.forward_ref"):60112,y=r?Symbol.for("react.suspense"):60113,m=r?Symbol.for("react.suspense_list"):60120,b=r?Symbol.for("react.memo"):60115,v=r?Symbol.for("react.lazy"):60116,g=r?Symbol.for("react.block"):60121,E=r?Symbol.for("react.fundamental"):60117,C=r?Symbol.for("react.responder"):60118,O=r?Symbol.for("react.scope"):60119;t.AsyncMode=d,t.ConcurrentMode=p,t.ContextConsumer=c,t.ContextProvider=f,t.Element=a,t.ForwardRef=h,t.Fragment=i,t.Lazy=v,t.Memo=b,t.Portal=l,t.Profiler=u,t.StrictMode=s,t.Suspense=y,t.isAsyncMode=function(e){return o(e)||n(e)===d},t.isConcurrentMode=o,t.isContextConsumer=function(e){return n(e)===c},t.isContextProvider=function(e){return n(e)===f},t.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===a},t.isForwardRef=function(e){return n(e)===h},t.isFragment=function(e){return n(e)===i},t.isLazy=function(e){return n(e)===v},t.isMemo=function(e){return n(e)===b},t.isPortal=function(e){return n(e)===l},t.isProfiler=function(e){return n(e)===u},t.isStrictMode=function(e){return n(e)===s},t.isSuspense=function(e){return n(e)===y},t.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===i||e===p||e===u||e===s||e===y||e===m||"object"==typeof e&&null!==e&&(e.$$typeof===v||e.$$typeof===b||e.$$typeof===f||e.$$typeof===c||e.$$typeof===h||e.$$typeof===E||e.$$typeof===C||e.$$typeof===O||e.$$typeof===g)},t.typeOf=n},function(e,t){"use strict";function n(){var e=this.constructor.getDerivedStateFromProps(this.props,this.state);null!==e&&void 0!==e&&this.setState(e)}function o(e){function t(t){var n=this.constructor.getDerivedStateFromProps(e,t);return null!==n&&void 0!==n?n:null}this.setState(t.bind(this))}function r(e,t){try{var n=this.props,o=this.state;this.props=e,this.state=t,this.__reactInternalSnapshotFlag=!0,this.__reactInternalSnapshot=this.getSnapshotBeforeUpdate(n,o)}finally{this.props=n,this.state=o}}function a(e){var t=e.prototype;if(!t||!t.isReactComponent)throw new Error("Can only polyfill class components");if("function"!=typeof e.getDerivedStateFromProps&&"function"!=typeof t.getSnapshotBeforeUpdate)return e;var a=null,l=null,i=null;if("function"==typeof t.componentWillMount?a="componentWillMount":"function"==typeof t.UNSAFE_componentWillMount&&(a="UNSAFE_componentWillMount"),"function"==typeof t.componentWillReceiveProps?l="componentWillReceiveProps":"function"==typeof t.UNSAFE_componentWillReceiveProps&&(l="UNSAFE_componentWillReceiveProps"),"function"==typeof t.componentWillUpdate?i="componentWillUpdate":"function"==typeof t.UNSAFE_componentWillUpdate&&(i="UNSAFE_componentWillUpdate"),null!==a||null!==l||null!==i){var s=e.displayName||e.name,u="function"==typeof e.getDerivedStateFromProps?"getDerivedStateFromProps()":"getSnapshotBeforeUpdate()";throw Error("Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n"+s+" uses "+u+" but also contains the following legacy lifecycles:"+(null!==a?"\n "+a:"")+(null!==l?"\n "+l:"")+(null!==i?"\n "+i:"")+"\n\nThe above lifecycles should be removed. Learn more about this warning here:\nhttps://fb.me/react-async-component-lifecycle-hooks")}if("function"==typeof e.getDerivedStateFromProps&&(t.componentWillMount=n,t.componentWillReceiveProps=o),"function"==typeof t.getSnapshotBeforeUpdate){if("function"!=typeof t.componentDidUpdate)throw new Error("Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype");t.componentWillUpdate=r;var f=t.componentDidUpdate;t.componentDidUpdate=function(e,t,n){var o=this.__reactInternalSnapshotFlag?this.__reactInternalSnapshot:n;f.call(this,e,t,o)}}return e}Object.defineProperty(t,"__esModule",{value:!0}),n.__suppressDeprecationWarning=!0,o.__suppressDeprecationWarning=!0,r.__suppressDeprecationWarning=!0,t.polyfill=a},function(e,t,n){"use strict";function o(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function s(e){return e()}Object.defineProperty(t,"__esModule",{value:!0}),t.bodyOpenClassName=t.portalClassName=void 0;var u=Object.assign||function(e){for(var t=1;t0&&(N-=1,0===N&&C.show(t)),n.props.shouldFocusAfterRender&&(n.props.shouldReturnFocusAfterClose?(b.returnFocus(),b.teardownScopedFocus()):b.popWithoutFocus()),n.props.onAfterClose&&n.props.onAfterClose(),P.default.deregister(n)},n.open=function(){n.beforeOpen(),n.state.afterOpen&&n.state.beforeClose?(clearTimeout(n.closeTimer),n.setState({beforeClose:!1})):(n.props.shouldFocusAfterRender&&(b.setupScopedFocus(n.node),b.markForFocusLater()),n.setState({isOpen:!0},function(){n.setState({afterOpen:!0}),n.props.isOpen&&n.props.onAfterOpen&&n.props.onAfterOpen({overlayEl:n.overlay,contentEl:n.content})}))},n.close=function(){n.props.closeTimeoutMS>0?n.closeWithTimeout():n.closeWithoutTimeout()},n.focusContent=function(){return n.content&&!n.contentHasFocus()&&n.content.focus()},n.closeWithTimeout=function(){var e=Date.now()+n.props.closeTimeoutMS;n.setState({beforeClose:!0,closesAt:e},function(){n.closeTimer=setTimeout(n.closeWithoutTimeout,n.state.closesAt-Date.now())})},n.closeWithoutTimeout=function(){n.setState({beforeClose:!1,isOpen:!1,afterOpen:!1,closesAt:null},n.afterClose)},n.handleKeyDown=function(e){e.keyCode===R&&(0,g.default)(n.content,e),n.props.shouldCloseOnEsc&&e.keyCode===k&&(e.stopPropagation(),n.requestClose(e))},n.handleOverlayOnClick=function(e){null===n.shouldClose&&(n.shouldClose=!0),n.shouldClose&&n.props.shouldCloseOnOverlayClick&&(n.ownerHandlesClose()?n.requestClose(e):n.focusContent()),n.shouldClose=null},n.handleContentOnMouseUp=function(){n.shouldClose=!1},n.handleOverlayOnMouseDown=function(e){n.props.shouldCloseOnOverlayClick||e.target!=n.overlay||e.preventDefault()},n.handleContentOnClick=function(){n.shouldClose=!1},n.handleContentOnMouseDown=function(){n.shouldClose=!1},n.requestClose=function(e){return n.ownerHandlesClose()&&n.props.onRequestClose(e)},n.ownerHandlesClose=function(){return n.props.onRequestClose},n.shouldBeClosed=function(){return!n.state.isOpen&&!n.state.beforeClose},n.contentHasFocus=function(){return document.activeElement===n.content||n.content.contains(document.activeElement)},n.buildClassName=function(e,t){var o="object"===("undefined"==typeof t?"undefined":f(t))?t:{base:x[e],afterOpen:x[e]+"--after-open",beforeClose:x[e]+"--before-close"},r=o.base;return n.state.afterOpen&&(r=r+" "+o.afterOpen),n.state.beforeClose&&(r=r+" "+o.beforeClose),"string"==typeof t&&t?r+" "+t:r},n.attributesFromObject=function(e,t){return Object.keys(t).reduce(function(n,o){return n[e+"-"+o]=t[o],n},{})},n.state={afterOpen:!1,beforeClose:!1},n.shouldClose=null,n.moveFromContentToOverlay=null,n}return s(t,e),c(t,[{key:"componentDidMount",value:function(){this.props.isOpen&&this.open()}},{key:"componentDidUpdate",value:function(e,t){"production"!==o.env.NODE_ENV&&(e.bodyOpenClassName!==this.props.bodyOpenClassName&&console.warn('React-Modal: "bodyOpenClassName" prop has been modified. This may cause unexpected behavior when multiple modals are open.'),e.htmlOpenClassName!==this.props.htmlOpenClassName&&console.warn('React-Modal: "htmlOpenClassName" prop has been modified. This may cause unexpected behavior when multiple modals are open.')),this.props.isOpen&&!e.isOpen?this.open():!this.props.isOpen&&e.isOpen&&this.close(),this.props.shouldFocusAfterRender&&this.state.isOpen&&!t.isOpen&&this.focusContent()}},{key:"componentWillUnmount",value:function(){this.state.isOpen&&this.afterClose(),clearTimeout(this.closeTimer)}},{key:"beforeOpen",value:function(){var e=this.props,t=e.appElement,n=e.ariaHideApp,o=e.htmlOpenClassName,r=e.bodyOpenClassName;r&&w.add(document.body,r),o&&w.add(document.getElementsByTagName("html")[0],o),n&&(N+=1,C.hide(t)),P.default.register(this)}},{key:"render",value:function(){var e=this.props,t=e.id,n=e.className,o=e.overlayClassName,r=e.defaultStyles,a=n?{}:r.content,l=o?{}:r.overlay;return this.shouldBeClosed()?null:p.default.createElement("div",{ref:this.setOverlayRef,className:this.buildClassName("overlay",o),style:u({},l,this.props.style.overlay),onClick:this.handleOverlayOnClick,onMouseDown:this.handleOverlayOnMouseDown},p.default.createElement("div",u({id:t,ref:this.setContentRef,style:u({},a,this.props.style.content),className:this.buildClassName("content",n),tabIndex:"-1",onKeyDown:this.handleKeyDown,onMouseDown:this.handleContentOnMouseDown,onMouseUp:this.handleContentOnMouseUp,onClick:this.handleContentOnClick,role:this.props.role,"aria-label":this.props.contentLabel},this.attributesFromObject("aria",this.props.aria||{}),this.attributesFromObject("data",this.props.data||{}),{"data-testid":this.props.testId}),this.props.children))}}]),t}(d.Component);F.defaultProps={style:{overlay:{},content:{}},defaultStyles:{}},F.propTypes={isOpen:y.default.bool.isRequired,defaultStyles:y.default.shape({content:y.default.object,overlay:y.default.object}),style:y.default.shape({content:y.default.object,overlay:y.default.object}),className:y.default.oneOfType([y.default.string,y.default.object]),overlayClassName:y.default.oneOfType([y.default.string,y.default.object]),bodyOpenClassName:y.default.string,htmlOpenClassName:y.default.string,ariaHideApp:y.default.bool,appElement:y.default.instanceOf(T.default),onAfterOpen:y.default.func,onAfterClose:y.default.func,onRequestClose:y.default.func,closeTimeoutMS:y.default.number,shouldFocusAfterRender:y.default.bool,shouldCloseOnOverlayClick:y.default.bool,shouldReturnFocusAfterClose:y.default.bool,role:y.default.string,contentLabel:y.default.string,aria:y.default.object,data:y.default.object,children:y.default.node,shouldCloseOnEsc:y.default.bool,overlayRef:y.default.func,contentRef:y.default.func,id:y.default.string,testId:y.default.string},t.default=F,e.exports=t.default}).call(t,n(6))},function(e,t,n){(function(e){"use strict";function t(e){return e&&e.__esModule?e:{default:e}}function o(){return 0===u.length?void("production"!==e.env.NODE_ENV&&console.warn("React-Modal: Open instances > 0 expected")):void u[u.length-1].focusContent()}function r(e,t){i&&s||(i=document.createElement("div"),i.setAttribute("data-react-modal-body-trap",""),i.style.position="absolute",i.style.opacity="0",i.setAttribute("tabindex","0"),i.addEventListener("focus",o),s=i.cloneNode(),s.addEventListener("focus",o)),u=t,u.length>0?(document.body.firstChild!==i&&document.body.insertBefore(i,document.body.firstChild),document.body.lastChild!==s&&document.body.appendChild(s)):(i.parentElement&&i.parentElement.removeChild(i),s.parentElement&&s.parentElement.removeChild(s))}var a=n(27),l=t(a),i=void 0,s=void 0,u=[];l.default.subscribe(r)}).call(t,n(6))},function(e,t,n){(function(e){"use strict";function n(){if("production"!==e.env.NODE_ENV){var t=document.getElementsByTagName("html")[0].className,n="Show tracked classes:\n\n";n+=" ("+t+"):\n";for(var a in o)n+=" "+a+" "+o[a]+"\n";t=document.body.className,n+="\n\ndoc.body ("+t+"):\n";for(var l in r)n+=" "+l+" "+r[l]+"\n";n+="\n",console.log(n)}}Object.defineProperty(t,"__esModule",{value:!0}),t.dumpClassLists=n;var o={},r={},a=function(e,t){return e[t]||(e[t]=0),e[t]+=1,t},l=function(e,t){return e[t]&&(e[t]-=1),t},i=function(e,t,n){n.forEach(function(n){a(t,n),e.add(n)})},s=function(e,t,n){n.forEach(function(n){l(t,n),0===t[n]&&e.remove(n)})};t.add=function(e,t){return i(e.classList,"html"==e.nodeName.toLowerCase()?o:r,t.split(" "))},t.remove=function(e,t){return s(e.classList,"html"==e.nodeName.toLowerCase()?o:r,t.split(" "))}}).call(t,n(6))},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(){y=!0}function a(){if(y){if(y=!1,!h)return;setTimeout(function(){if(!h.contains(document.activeElement)){var e=(0,d.default)(h)[0]||h;e.focus()}},0)}}function l(){p.push(document.activeElement)}function i(){var e=null;try{return void(0!==p.length&&(e=p.pop(),e.focus()))}catch(t){console.warn(["You tried to return focus to",e,"but it is not in the DOM anymore"].join(" "))}}function s(){p.length>0&&p.pop()}function u(e){h=e,window.addEventListener?(window.addEventListener("blur",r,!1),document.addEventListener("focus",a,!0)):(window.attachEvent("onBlur",r),document.attachEvent("onFocus",a))}function f(){h=null,window.addEventListener?(window.removeEventListener("blur",r),document.removeEventListener("focus",a)):(window.detachEvent("onBlur",r),document.detachEvent("onFocus",a))}Object.defineProperty(t,"__esModule",{value:!0}),t.handleBlur=r,t.handleFocus=a,t.markForFocusLater=l,t.returnFocus=i,t.popWithoutFocus=s,t.setupScopedFocus=u,t.teardownScopedFocus=f;var c=n(28),d=o(c),p=[],h=null,y=!1},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){var n=(0,l.default)(e);if(!n.length)return void t.preventDefault();var o=void 0,r=t.shiftKey,a=n[0],i=n[n.length-1];if(e===document.activeElement){if(!r)return;o=i}if(i!==document.activeElement||r||(o=a),a===document.activeElement&&r&&(o=i),o)return t.preventDefault(),void o.focus();var s=/(\bChrome\b|\bSafari\b)\//.exec(navigator.userAgent),u=null!=s&&"Chrome"!=s[1]&&null==/\biPod\b|\biPad\b/g.exec(navigator.userAgent);if(u){var f=n.indexOf(document.activeElement);if(f>-1&&(f+=r?-1:1),o=n[f],"undefined"==typeof o)return t.preventDefault(),o=r?i:a,void o.focus();t.preventDefault(),o.focus()}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var a=n(28),l=o(a);e.exports=t.default},function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var r=n(65),a=o(r);t.default=a.default,e.exports=t.default},function(e,t,n){var o,r,a;!function(l,i){r=[t,n(1),n(29),n(2),n(10),n(11),n(74)],o=i,a="function"==typeof o?o.apply(t,r):o,!(void 0!==a&&(e.exports=a))}(this,function(e,t,n,o,r,a,l){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function s(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function f(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(e,"__esModule",{value:!0});var c=i(t),d=i(n),p=i(o),h=i(r),y=i(a),m=i(l),b=function(){function e(e,t){for(var n=0;ne.props.stack.limit){var o=n[0].id;h.default.dispatch({type:"REMOVE",data:{id:o}}),n=(0,m.default)("right",e)||[]}e.setState({dataRight:n})})})};this.unsubStoreRight=h.default.subscribe(a);var l=function(){requestAnimationFrame(function(){return requestAnimationFrame(function(){var n=void 0;if(t=(0,m.default)("left",e)||[],n=t.length,e.props.stack&&e.props.stack.limit&&n>e.props.stack.limit){var o=t[0].id;h.default.dispatch({type:"REMOVE",data:{id:o}}),t=(0,m.default)("left",e)||[]}e.setState({dataLeft:t})})})};this.unsubStoreLeft=h.default.subscribe(l);var i=function(){requestAnimationFrame(function(){return requestAnimationFrame(function(){var t=void 0;if(o=(0,m.default)("full-top",e)||[],t=o.length,e.props.stack&&e.props.stack.limit&&t>e.props.stack.limit){var n=o[0].id;h.default.dispatch({type:"REMOVE",data:{id:n}}),o=(0,m.default)("full-top",e)||[]}e.setState({dataTop:o})})})};this.unsubStoreTop=h.default.subscribe(i);var s=function(){requestAnimationFrame(function(){return requestAnimationFrame(function(){var t=void 0;if(r=(0,m.default)("full-bottom",e)||[],t=r.length,e.props.stack&&e.props.stack.limit&&t>e.props.stack.limit){var n=r[0].id;h.default.dispatch({type:"REMOVE",data:{id:n}}),r=(0,m.default)("full-bottom",e)||[]}e.setState({dataBottom:r})})})};this.unsubStoreBottom=h.default.subscribe(s);var u={contentTemplate:this.props.contentTemplate,offset:this.props.offset,message:this.props.message,stack:this.props.stack,html:this.props.html,customFields:this.props.customFields,position:this.props.position||"top-right",preserveContext:this.props.preserveContext||!1};y.default.setGlobalConfig(u)}},{key:"componentWillUnmount",value:function(){this.unsubStoreTop(),this.unsubStoreBottom(),this.unsubStoreLeft(),this.unsubStoreRight()}},{key:"render",value:function(){var e=this,t=function(t,n){var o="alert-key-"+t.id+"-"+t.position,r=t.id,a=y.default.returnFirstDefined(t.condition,"info"),l=y.default.returnFirstDefined(t.message,e.props.message,""),i=y.default.returnFirstDefined(t.position,e.props.position,"top-right"),s=(y.default.returnFirstDefined(t.offset,e.props.offset,0),y.default.returnFirstDefined(t.effect,e.props.effect)),u=t.boxPosition,f=y.default.returnFirstDefined(t.beep,e.props.beep,!1),p=y.default.returnFirstDefined(t.timeout,e.props.timeout,5e3),h=y.default.returnFirstDefined(t.html,e.props.html),m=y.default.returnFirstDefined(t.onClose,e.props.onClose),b=y.default.returnFirstDefined(t.onShow,e.props.onShow),v=y.default.returnFirstDefined(t.customFields,e.props.customFields),g=e.props.contentTemplate;return c.default.createElement(d.default,{key:o,id:r,customFields:v,condition:a,message:l,position:i,effect:s,boxPosition:u,beep:f,timeout:p,html:h,onClose:m,onShow:b,contentTemplate:g})},n=this.state.dataRight.map(t),o=this.state.dataLeft.map(t),r=this.state.dataTop.map(t),a=this.state.dataBottom.map(t);return c.default.createElement("div",{className:"s-alert-wrapper"},n,o,r,a)}}],[{key:"info",value:function(e,t){return g(e,t,"info")}},{key:"error",value:function(e,t){return g(e,t,"error")}},{key:"warning",value:function(e,t){return g(e,t,"warning")}},{key:"success",value:function(e,t){return g(e,t,"success")}},{key:"close",value:function(e){h.default.dispatch({type:"REMOVE",data:{id:e}})}},{key:"closeAll",value:function(){h.default.dispatch({type:"REMOVEALL"})}}]),t}(c.default.Component);E.propTypes={message:p.default.string,position:p.default.string,offset:p.default.number,stack:p.default.oneOfType([p.default.bool,p.default.object]),effect:p.default.string,beep:p.default.oneOfType([p.default.string,p.default.object,p.default.bool]),timeout:p.default.oneOfType([p.default.oneOf(["none"]),p.default.number]),html:p.default.bool,preserveContext:p.default.bool,onClose:p.default.func,onShow:p.default.func,customFields:p.default.object,contentTemplate:p.default.func},e.default=E})},function(e,t,n){var o,r,a;!function(l,i){r=[t,n(1),n(2)],o=i,a="function"==typeof o?o.apply(t,r):o,!(void 0!==a&&(e.exports=a))}(this,function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(e,"__esModule",{value:!0});var i=o(t),s=o(n),u=function(){function e(e,t){for(var n=0;n1?n-1:0);for(var o=1;o2?o-2:0);for(var a=2;a rowCount) {
+ rowCount = Number(column.props.row);
+ }
+ });
+ return _react2.default.Children.map(children, function (column, i) {
+ if (column === null || column === undefined) {
+ // Return null for empty objects
+ return null;
+ }
+
+ var rowIndex = column.props.row ? Number(column.props.row) : 0;
+ var rowSpan = column.props.rowSpan ? Number(column.props.rowSpan) : 1;
+ if (rowSpan + rowIndex === rowCount + 1) {
+ var columnDescription = _this3.getColumnDescription(column);
+
+ columnDescription.index = i;
+ return columnDescription;
+ }
+ });
+ }
+ }, {
+ key: 'getColumnDescription',
+ value: function getColumnDescription(column) {
+ var columnDescription = {
+ name: column.props.dataField,
+ align: column.props.dataAlign,
+ sort: column.props.dataSort,
+ format: column.props.dataFormat,
+ formatExtraData: column.props.formatExtraData,
+ filterFormatted: column.props.filterFormatted,
+ filterValue: column.props.filterValue,
+ editable: column.props.editable,
+ customEditor: column.props.customEditor,
+ hidden: column.props.hidden,
+ hiddenOnInsert: column.props.hiddenOnInsert,
+ searchable: column.props.searchable,
+ className: column.props.columnClassName,
+ editClassName: column.props.editColumnClassName,
+ invalidEditColumnClassName: column.props.invalidEditColumnClassName,
+ columnTitle: column.props.columnTitle,
+ width: column.props.width,
+ text: column.props.headerText || column.props.children,
+ sortFunc: column.props.sortFunc,
+ sortFuncExtraData: column.props.sortFuncExtraData,
+ export: column.props.export,
+ expandable: column.props.expandable,
+ attrs: column.props.tdAttr,
+ editAttrs: column.props.editTdAttr,
+ style: column.props.tdStyle
+ };
+
+ if (column.type.name !== _TableHeaderColumn2.default.name && _react2.default.isValidElement(column.props.children)) {
+ columnDescription = _extends({}, columnDescription, this.getColumnDescription(_react2.default.Children.only(column.props.children)));
+ }
+
+ return columnDescription;
+ }
+ }, {
+ key: 'reset',
+ value: function reset() {
+ var _this4 = this;
+
+ var pageStartIndex = this.props.options.pageStartIndex;
+
+ this.store.clean();
+ this.body.setState({ currEditCell: null });
+ this.setState(function () {
+ return {
+ data: _this4.getTableData(),
+ currPage: _util2.default.getFirstPage(pageStartIndex),
+ expanding: [],
+ sizePerPage: _Const2.default.SIZE_PER_PAGE_LIST[0],
+ selectedRowKeys: [],
+ reset: true
+ };
+ });
+ }
+
+ /* eslint-disable */
+
+ }, {
+ key: 'UNSAFE_componentWillReceiveProps',
+ value: function UNSAFE_componentWillReceiveProps(nextProps) {
+ /* eslint-enable */
+ this.initTable(nextProps);
+ var options = nextProps.options,
+ selectRow = nextProps.selectRow;
+ var replace = nextProps.replace;
+
+ replace = replace || this.props.replace;
+
+ if (!nextProps.data) {
+ return;
+ }
+ this.store.setData(nextProps.data.slice());
+
+ if (!replace) {
+ // from #481
+ var page = this.state.currPage;
+ if (this.props.options.page !== options.page) {
+ page = options.page;
+ }
+ // from #481
+ var sizePerPage = this.state.sizePerPage;
+ if (this.props.options.sizePerPage !== options.sizePerPage) {
+ sizePerPage = options.sizePerPage;
+ }
+
+ if (this.isRemoteDataSource()) {
+ var newState = { sizePerPage: sizePerPage, reset: false, currPage: page };
+ var data = nextProps.data.slice();
+ if (nextProps.pagination && !this.allowRemote(_Const2.default.REMOTE_PAGE)) {
+ data = this.store.page(page, sizePerPage).get();
+ }
+
+ if (this.store.isOnFilter) {
+ if (this.store.searchText) this.handleSearch(this.store.searchText);
+ if (this.store.filterObj) this.handleFilterData(this.store.filterObj);
+ newState.currPage = _util2.default.getFirstPage(nextProps.options.pageStartIndex);
+ } else {
+ if (!this.allowRemote(_Const2.default.REMOTE_SORT)) {
+ data = this.store.sort().get();
+ } else {
+ var currentOptions = this.props.options;
+
+ var sortName = options.sortName;
+ var sortOrder = options.sortOrder;
+ if (currentOptions.sortName !== sortName || currentOptions.sortOrder !== sortOrder) {
+ this.store.setSortInfo(sortOrder, options.sortName);
+ }
+ }
+ newState.data = data;
+ }
+ this.setState(function () {
+ return newState;
+ });
+ } else {
+ // #125
+ // remove !options.page for #709
+ if (page > Math.ceil(nextProps.data.length / sizePerPage)) {
+ page = 1;
+ }
+ var sortList = this.store.getSortInfo();
+ var sortField = options.sortName;
+ var _sortOrder = options.sortOrder;
+ if (sortField && _sortOrder) {
+ this.store.setSortInfo(_sortOrder, sortField);
+ this.store.sort();
+ } else if (sortList.length > 0) {
+ this.store.sort();
+ }
+ var _data = this.store.page(page, sizePerPage).get();
+ this.setState(function () {
+ return {
+ data: _data,
+ currPage: page,
+ sizePerPage: sizePerPage,
+ reset: false
+ };
+ });
+
+ if (this.store.isSearching && options.afterSearch) {
+ options.afterSearch(this.store.searchText, this.store.getDataIgnoringPagination());
+ }
+
+ if (this.store.isFiltering && options.afterColumnFilter) {
+ options.afterColumnFilter(this.store.filterObj, this.store.getDataIgnoringPagination());
+ }
+ }
+
+ // If setting the expanded rows is being handled externally
+ // then overwrite the current expanded rows.
+ if (this.props.options.expanding !== options.expanding) {
+ this.setState(function () {
+ return {
+ expanding: options.expanding || []
+ };
+ });
+ }
+
+ if (selectRow && selectRow.selected) {
+ // set default select rows to store.
+ var copy = selectRow.selected.slice();
+ this.store.setSelectedRowKey(copy);
+ this.setState(function () {
+ return {
+ selectedRowKeys: copy,
+ reset: false
+ };
+ });
+ }
+
+ if (selectRow && selectRow.mode !== 'none' && this.state.y !== 0) {
+ // If user switched to select row, reset the focus to the first cell
+ this.setState(function () {
+ return {
+ y: 0,
+ x: 0
+ };
+ });
+ }
+ } else {
+ this.reset();
+ }
+ }
+ }, {
+ key: 'componentDidMount',
+ value: function componentDidMount() {
+ this._adjustTable();
+ window.addEventListener('resize', this._adjustTable);
+ this.body.container.addEventListener('scroll', this._scrollHeader);
+ if (this.props.footer) {
+ this.body.container.addEventListener('scroll', this._scrollFooter);
+ }
+ if (this.props.scrollTop) {
+ this._scrollTop();
+ }
+ }
+ }, {
+ key: 'componentWillUnmount',
+ value: function componentWillUnmount() {
+ window.removeEventListener('resize', this._adjustTable);
+ if (this.body && this.body.container) {
+ this.body.container.removeEventListener('scroll', this._scrollHeader);
+ if (this.props.footer) {
+ this.body.container.removeEventListener('scroll', this._scrollFooter);
+ }
+ }
+ if (this.filter) {
+ this.filter.removeAllListeners('onFilterChange');
+ }
+ }
+ }, {
+ key: 'componentDidUpdate',
+ value: function componentDidUpdate() {
+ this._adjustTable();
+ if (this.props.options.afterTableComplete) {
+ this.props.options.afterTableComplete();
+ }
+ }
+
+ /**
+ * Returns true if in the current configuration,
+ * the datagrid should load its data remotely.
+ *
+ * @param {Object} [props] Optional. If not given, this.props will be used
+ * @return {Boolean}
+ */
+
+ }, {
+ key: 'isRemoteDataSource',
+ value: function isRemoteDataSource(props) {
+ var _ref2 = props || this.props,
+ remote = _ref2.remote;
+
+ return remote === true || _util2.default.isFunction(remote);
+ }
+
+ /**
+ * Returns true if this action can be handled remote store
+ * From #990, Sometimes, we need some actions as remote, some actions are handled by default
+ * so function will tell you the target action is can be handled as remote or not.
+ * @param {String} [action] Required.
+ * @param {Object} [props] Optional. If not given, this.props will be used
+ * @return {Boolean}
+ */
+
+ }, {
+ key: 'allowRemote',
+ value: function allowRemote(action, props) {
+ var _ref3 = props || this.props,
+ remote = _ref3.remote;
+
+ if (typeof remote === 'function') {
+ var remoteObj = remote(_Const2.default.REMOTE);
+ return remoteObj[action];
+ } else {
+ return remote;
+ }
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _this5 = this;
+
+ var style = {
+ height: this.props.height,
+ maxHeight: this.props.maxHeight
+ };
+
+ var columns = this.getColumnsDescription(this.props);
+ var sortList = this.store.getSortInfo();
+ var pagination = this.renderPagination();
+ var toolBar = this.renderToolBar();
+ var tableFilter = this.renderTableFilter(columns);
+ var isSelectAll = this.isSelectAll();
+ var expandColumnOptions = this.props.expandColumnOptions;
+ if (typeof expandColumnOptions.expandColumnBeforeSelectColumn === 'undefined') {
+ expandColumnOptions.expandColumnBeforeSelectColumn = true;
+ }
+ var colGroups = _util2.default.renderColGroup(columns, this.props.selectRow, expandColumnOptions, this.props.version);
+ var tableFooter = this.renderTableFooter(this.props.footerData, this.state.data, columns, colGroups);
+ var sortIndicator = this.props.options.sortIndicator;
+ if (typeof this.props.options.sortIndicator === 'undefined') sortIndicator = true;
+
+ var _props$options$pagina = this.props.options.paginationPosition,
+ paginationPosition = _props$options$pagina === undefined ? _Const2.default.PAGINATION_POS_BOTTOM : _props$options$pagina;
+
+ var showPaginationOnTop = paginationPosition !== _Const2.default.PAGINATION_POS_BOTTOM;
+ var showPaginationOnBottom = paginationPosition !== _Const2.default.PAGINATION_POS_TOP;
+ var selectRow = _extends({}, this.props.selectRow);
+ if (this.props.cellEdit && this.props.cellEdit.mode !== _Const2.default.CELL_EDIT_NONE) {
+ selectRow.clickToSelect = false;
+ }
+
+ var _props$options$toolba = this.props.options.toolbarPosition,
+ toolbarPosition = _props$options$toolba === undefined ? _Const2.default.TOOLBAR_POS_TOP : _props$options$toolba;
+
+ var showToolbarOnTop = toolbarPosition !== _Const2.default.TOOLBAR_POS_BOTTOM;
+ var showToolbarOnBottom = toolbarPosition !== _Const2.default.TOOLBAR_POS_TOP;
+ var _props$options$hideRo = this.props.options.hideRowOnExpand,
+ hideRowOnExpand = _props$options$hideRo === undefined ? false : _props$options$hideRo;
+
+ return _react2.default.createElement(
+ 'div',
+ { className: (0, _classnames2.default)('react-bs-table-container', this.props.className, this.props.containerClass),
+ style: this.props.containerStyle },
+ showToolbarOnTop ? toolBar : null,
+ showPaginationOnTop ? pagination : null,
+ _react2.default.createElement(
+ 'div',
+ { ref: function ref(node) {
+ return _this5.table = node;
+ },
+ className: (0, _classnames2.default)('react-bs-table', { 'react-bs-table-bordered': this.props.bordered }, this.props.tableContainerClass),
+ style: _extends({}, style, this.props.tableStyle),
+ onMouseEnter: this.handleMouseEnter,
+ onMouseLeave: this.handleMouseLeave },
+ _react2.default.createElement(
+ _TableHeader2.default,
+ {
+ ref: function ref(node) {
+ return _this5.header = node;
+ },
+ version: this.props.version,
+ colGroups: colGroups,
+ headerContainerClass: this.props.headerContainerClass,
+ tableHeaderClass: this.props.tableHeaderClass,
+ style: this.props.headerStyle,
+ rowSelectType: this.props.selectRow.mode,
+ customComponent: this.props.selectRow.customComponent,
+ hideSelectColumn: this.props.selectRow.hideSelectColumn,
+ sortList: sortList,
+ sortIndicator: sortIndicator,
+ onSort: this.handleSort,
+ onSelectAllRow: this.handleSelectAllRow,
+ bordered: this.props.bordered,
+ condensed: this.props.condensed,
+ isFiltered: this.filter ? true : false,
+ isSelectAll: isSelectAll,
+ reset: this.state.reset,
+ expandColumnVisible: expandColumnOptions.expandColumnVisible,
+ expandColumnComponent: expandColumnOptions.expandColumnComponent,
+ expandedColumnHeaderComponent: expandColumnOptions.expandedColumnHeaderComponent,
+ noAnyExpand: this.state.expanding.length === 0,
+ expandAll: this.props.options.expandAll,
+ toggleExpandAllChilds: this.toggleExpandAllChilds,
+ expandColumnBeforeSelectColumn: expandColumnOptions.expandColumnBeforeSelectColumn },
+ this.props.children
+ ),
+ _react2.default.createElement(_TableBody2.default, {
+ ref: function ref(node) {
+ return _this5.body = node;
+ },
+ bodyContainerClass: this.props.bodyContainerClass,
+ tableBodyClass: this.props.tableBodyClass,
+ style: _extends({}, style, this.props.bodyStyle),
+ data: this.state.data,
+ version: this.props.version,
+ expandComponent: this.props.expandComponent,
+ expandableRow: this.props.expandableRow,
+ expandRowBgColor: this.props.options.expandRowBgColor,
+ expandBy: this.props.options.expandBy || _Const2.default.EXPAND_BY_ROW,
+ expandBodyClass: this.props.options.expandBodyClass,
+ expandParentClass: this.props.options.expandParentClass,
+ columns: columns,
+ trClassName: this.props.trClassName,
+ trStyle: this.props.trStyle,
+ striped: this.props.striped,
+ bordered: this.props.bordered,
+ hover: this.props.hover,
+ keyField: this.store.getKeyField(),
+ condensed: this.props.condensed,
+ selectRow: selectRow,
+ expandColumnOptions: this.props.expandColumnOptions,
+ cellEdit: this.props.cellEdit,
+ selectedRowKeys: this.state.selectedRowKeys,
+ onRowClick: this.handleRowClick,
+ onRowDoubleClick: this.handleRowDoubleClick,
+ onRowMouseOver: this.handleRowMouseOver,
+ onRowMouseOut: this.handleRowMouseOut,
+ onSelectRow: this.handleSelectRow,
+ noDataText: this.props.options.noDataText,
+ withoutNoDataText: this.props.options.withoutNoDataText,
+ expanding: this.state.expanding,
+ onExpand: this.handleExpandRow,
+ onlyOneExpanding: this.props.options.onlyOneExpanding,
+ beforeShowError: this.props.options.beforeShowError,
+ keyBoardNav: this.props.keyBoardNav,
+ onNavigateCell: this.handleNavigateCell,
+ x: this.state.x,
+ y: this.state.y,
+ withoutTabIndex: this.props.withoutTabIndex,
+ hideRowOnExpand: hideRowOnExpand,
+ onEditCell: this.handleEditCell }),
+ tableFooter
+ ),
+ tableFilter,
+ showPaginationOnBottom ? pagination : null,
+ showToolbarOnBottom ? toolBar : null,
+ this.props.renderAlert ? _react2.default.createElement(_reactSAlert2.default, { stack: { limit: 3 } }) : null
+ );
+ }
+ }, {
+ key: 'isSelectAll',
+ value: function isSelectAll() {
+ if (this.store.isEmpty()) return false;
+ var _props$selectRow = this.props.selectRow,
+ unselectable = _props$selectRow.unselectable,
+ onlyUnselectVisible = _props$selectRow.onlyUnselectVisible;
+
+ var keyField = this.store.getKeyField();
+ var allRowKeys = onlyUnselectVisible ? this.store.get().map(function (r) {
+ return r[keyField];
+ }) : this.store.getAllRowkey();
+ var defaultSelectRowKeys = this.store.getSelectedRowKeys();
+
+ if (onlyUnselectVisible) {
+ defaultSelectRowKeys = defaultSelectRowKeys.filter(function (x) {
+ return x !== allRowKeys;
+ });
+ }
+
+ if (defaultSelectRowKeys.length === 0) return false;
+ var match = 0;
+ var noFound = 0;
+ var unSelectableCnt = 0;
+ defaultSelectRowKeys.forEach(function (selected) {
+ if (allRowKeys.indexOf(selected) !== -1) match++;else noFound++;
+ if (unselectable && unselectable.indexOf(selected) !== -1) unSelectableCnt++;
+ });
+
+ if (noFound === defaultSelectRowKeys.length) return false;
+ if (match === allRowKeys.length) {
+ return true;
+ } else {
+ if (unselectable && match <= unSelectableCnt && unSelectableCnt === unselectable.length) return false;else return 'indeterminate';
+ }
+ // return (match === allRowKeys.length) ? true : 'indeterminate';
+ }
+ }, {
+ key: 'cleanSelected',
+ value: function cleanSelected() {
+ this.store.setSelectedRowKey([]);
+ this.setState(function () {
+ return {
+ selectedRowKeys: [],
+ reset: false
+ };
+ });
+ }
+ }, {
+ key: 'cleanSort',
+ value: function cleanSort() {
+ this.store.cleanSortInfo();
+ this.setState(function () {
+ return {
+ reset: false
+ };
+ });
+ }
+ }, {
+ key: '__handleSort__REACT_HOT_LOADER__',
+ value: function __handleSort__REACT_HOT_LOADER__(order, sortField) {
+ var _props2 = this.props,
+ sort = _props2.autoCollapse.sort,
+ options = _props2.options;
+
+ if (options.onSortChange) {
+ options.onSortChange(sortField, order, this.props);
+ }
+ this.store.setSortInfo(order, sortField);
+ if (this.allowRemote(_Const2.default.REMOTE_SORT)) {
+ if (sort) {
+ this.setState(function () {
+ return {
+ expanding: []
+ };
+ });
+ }
+ return;
+ }
+
+ var result = this.store.sort().get();
+ this.setState(function () {
+ var newState = {
+ data: result,
+ reset: false
+ };
+ if (sort) newState.expanding = [];
+ return newState;
+ });
+ }
+ }, {
+ key: '__handleExpandRow__REACT_HOT_LOADER__',
+ value: function __handleExpandRow__REACT_HOT_LOADER__(expanding, rowKey, isRowExpanding, event) {
+ var _this6 = this;
+
+ var onExpand = this.props.options.onExpand;
+
+ if (onExpand) {
+ onExpand(rowKey, !isRowExpanding, event);
+ }
+ this.setState(function () {
+ return { expanding: expanding, reset: false };
+ }, function () {
+ _this6._adjustHeaderWidth();
+ });
+ }
+ }, {
+ key: 'toggleExpandAllChilds',
+ value: function toggleExpandAllChilds() {
+ var _this7 = this;
+
+ var expanding = this.state.expanding;
+
+ if (expanding.length > 0) {
+ this.setState(function () {
+ return {
+ expanding: [],
+ reset: false
+ };
+ });
+ } else {
+ this.setState(function () {
+ return {
+ expanding: _this7.store.getAllRowkey(),
+ reset: false
+ };
+ });
+ }
+ }
+ }, {
+ key: '__handlePaginationData__REACT_HOT_LOADER__',
+ value: function __handlePaginationData__REACT_HOT_LOADER__(page, sizePerPage) {
+ var _props$options = this.props.options,
+ onPageChange = _props$options.onPageChange,
+ pageStartIndex = _props$options.pageStartIndex;
+
+ var emptyTable = this.store.isEmpty();
+ if (onPageChange) {
+ onPageChange(page, sizePerPage);
+ }
+
+ var state = {
+ sizePerPage: sizePerPage,
+ reset: false
+ };
+ if (!emptyTable) state.currPage = page;
+ this.setState(function () {
+ return state;
+ });
+
+ if (this.allowRemote(_Const2.default.REMOTE_PAGE) || emptyTable) {
+ return;
+ }
+
+ var result = this.store.page(_util2.default.getNormalizedPage(pageStartIndex, page), sizePerPage).get();
+ this.setState(function () {
+ return { data: result, reset: false };
+ });
+ }
+ }, {
+ key: '__handleMouseLeave__REACT_HOT_LOADER__',
+ value: function __handleMouseLeave__REACT_HOT_LOADER__() {
+ if (this.props.options.onMouseLeave) {
+ this.props.options.onMouseLeave();
+ }
+ }
+ }, {
+ key: '__handleMouseEnter__REACT_HOT_LOADER__',
+ value: function __handleMouseEnter__REACT_HOT_LOADER__() {
+ if (this.props.options.onMouseEnter) {
+ this.props.options.onMouseEnter();
+ }
+ }
+ }, {
+ key: '__handleRowMouseOut__REACT_HOT_LOADER__',
+ value: function __handleRowMouseOut__REACT_HOT_LOADER__(row, event) {
+ if (this.props.options.onRowMouseOut) {
+ this.props.options.onRowMouseOut(row, event);
+ }
+ }
+ }, {
+ key: '__handleRowMouseOver__REACT_HOT_LOADER__',
+ value: function __handleRowMouseOver__REACT_HOT_LOADER__(row, event) {
+ if (this.props.options.onRowMouseOver) {
+ this.props.options.onRowMouseOver(row, event);
+ }
+ }
+ }, {
+ key: '__handleNavigateCell__REACT_HOT_LOADER__',
+ value: function __handleNavigateCell__REACT_HOT_LOADER__(_ref4) {
+ var offSetX = _ref4.x,
+ offSetY = _ref4.y,
+ lastEditCell = _ref4.lastEditCell;
+ var pagination = this.props.pagination;
+ var _state = this.state,
+ x = _state.x,
+ y = _state.y,
+ currPage = _state.currPage;
+
+
+ var columns = this.store.getColInfos();
+ var visibleColumnIndices = Object.keys(columns).map(function (k, index) {
+ return columns[k].hidden ? -1 : index;
+ }).filter(function (k) {
+ return k !== -1;
+ });
+
+ if (visibleColumnIndices.indexOf(x) === 0 && offSetX < 0) {
+ x = -1;
+ } else if (visibleColumnIndices.indexOf(x) === visibleColumnIndices.length - 1 && offSetX >= 1) {
+ x = Object.keys(columns).length;
+ } else {
+ x = visibleColumnIndices[visibleColumnIndices.indexOf(x) + offSetX];
+ }
+ y += offSetY;
+
+ var visibleRowSize = this.state.data.length;
+ var visibleColumnSize = Object.keys(columns).filter(function (k) {
+ return !columns[k].hidden;
+ }).length;
+ var hiddenColumnSize = Object.keys(columns).filter(function (k) {
+ return columns[k].hidden;
+ }).length;
+
+ if (y >= visibleRowSize) {
+ currPage++;
+ var lastPage = pagination ? this.pagination.getLastPage() : -1;
+ if (currPage <= lastPage) {
+ this.handlePaginationData(currPage, this.state.sizePerPage);
+ } else {
+ return;
+ }
+ y = 0;
+ } else if (y < 0) {
+ currPage--;
+ if (currPage > 0) {
+ this.handlePaginationData(currPage, this.state.sizePerPage);
+ } else {
+ return;
+ }
+ y = visibleRowSize - 1;
+ } else if (x - hiddenColumnSize >= visibleColumnSize) {
+ if (y + 1 === visibleRowSize) {
+ currPage++;
+ var _lastPage = pagination ? this.pagination.getLastPage() : -1;
+ if (currPage <= _lastPage) {
+ this.handlePaginationData(currPage, this.state.sizePerPage);
+ } else {
+ return;
+ }
+ y = 0;
+ } else {
+ y++;
+ }
+ x = lastEditCell ? visibleColumnIndices[1] : visibleColumnIndices[0];
+ } else if (x < 0) {
+ x = visibleColumnIndices[visibleColumnIndices.length - 1];
+ if (y === 0) {
+ currPage--;
+ if (currPage > 0) {
+ this.handlePaginationData(currPage, this.state.sizePerPage);
+ } else {
+ return;
+ }
+ y = this.state.sizePerPage - 1;
+ } else {
+ y--;
+ }
+ }
+ this.setState(function () {
+ return {
+ x: x, y: y, currPage: currPage, reset: false
+ };
+ });
+ }
+ }, {
+ key: '__handleRowClick__REACT_HOT_LOADER__',
+ value: function __handleRowClick__REACT_HOT_LOADER__(row, rowIndex, columnIndex, event) {
+ var _props3 = this.props,
+ options = _props3.options,
+ keyBoardNav = _props3.keyBoardNav;
+
+ if (options.onRowClick) {
+ options.onRowClick(row, columnIndex, rowIndex, event);
+ }
+ if (keyBoardNav) {
+ var _ref5 = (typeof keyBoardNav === 'undefined' ? 'undefined' : _typeof(keyBoardNav)) === 'object' ? keyBoardNav : {},
+ clickToNav = _ref5.clickToNav;
+
+ clickToNav = clickToNav === false ? clickToNav : true;
+ if (clickToNav) {
+ this.setState(function () {
+ return {
+ x: columnIndex,
+ y: rowIndex,
+ reset: false
+ };
+ });
+ }
+ }
+ }
+ }, {
+ key: '__handleRowDoubleClick__REACT_HOT_LOADER__',
+ value: function __handleRowDoubleClick__REACT_HOT_LOADER__(row, event) {
+ if (this.props.options.onRowDoubleClick) {
+ this.props.options.onRowDoubleClick(row, event);
+ }
+ }
+ }, {
+ key: '__handleSelectAllRow__REACT_HOT_LOADER__',
+ value: function __handleSelectAllRow__REACT_HOT_LOADER__(e) {
+ var isSelected = e.currentTarget.checked;
+ var keyField = this.store.getKeyField();
+ var _props$selectRow2 = this.props.selectRow,
+ onSelectAll = _props$selectRow2.onSelectAll,
+ unselectable = _props$selectRow2.unselectable,
+ selected = _props$selectRow2.selected,
+ onlyUnselectVisible = _props$selectRow2.onlyUnselectVisible;
+
+ var selectedRowKeys = onlyUnselectVisible ? this.state.selectedRowKeys : [];
+ var result = true;
+ var rows = this.store.get();
+
+ // onlyUnselectVisible default is false, #1276
+ if (!isSelected && !onlyUnselectVisible) {
+ rows = this.store.getRowByKey(this.state.selectedRowKeys);
+ }
+
+ if (unselectable && unselectable.length > 0) {
+ if (isSelected) {
+ rows = rows.filter(function (r) {
+ return unselectable.indexOf(r[keyField]) === -1 || selected && selected.indexOf(r[keyField]) !== -1;
+ });
+ } else {
+ rows = rows.filter(function (r) {
+ return unselectable.indexOf(r[keyField]) === -1;
+ });
+ }
+ }
+
+ if (onSelectAll) {
+ result = this.props.selectRow.onSelectAll(isSelected, rows);
+ }
+
+ if (typeof result == 'undefined' || result !== false) {
+ if (isSelected) {
+ if (Array.isArray(result)) {
+ selectedRowKeys = result;
+ } else {
+ var currentRowKeys = rows.map(function (r) {
+ return r[keyField];
+ });
+ // onlyUnselectVisible default is false, #1276
+ if (onlyUnselectVisible) {
+ selectedRowKeys = selectedRowKeys.concat(currentRowKeys);
+ } else {
+ selectedRowKeys = currentRowKeys;
+ }
+ }
+ } else {
+ if (unselectable && selected) {
+ selectedRowKeys = selected.filter(function (r) {
+ return unselectable.indexOf(r) > -1;
+ });
+ } else if (onlyUnselectVisible) {
+ var _currentRowKeys = rows.map(function (r) {
+ return r[keyField];
+ });
+ selectedRowKeys = selectedRowKeys.filter(function (k) {
+ return _currentRowKeys.indexOf(k) === -1;
+ });
+ }
+ }
+
+ this.store.setSelectedRowKey(selectedRowKeys);
+ this.setState(function () {
+ return { selectedRowKeys: selectedRowKeys, reset: false };
+ });
+ }
+ }
+ }, {
+ key: '__handleShowOnlySelected__REACT_HOT_LOADER__',
+ value: function __handleShowOnlySelected__REACT_HOT_LOADER__() {
+ this.store.ignoreNonSelected();
+ var pageStartIndex = this.props.options.pageStartIndex;
+
+ var result = void 0;
+ if (this.props.pagination) {
+ result = this.store.page(_util2.default.getNormalizedPage(pageStartIndex), this.state.sizePerPage).get();
+ } else {
+ result = this.store.get();
+ }
+ this.setState(function () {
+ return {
+ data: result,
+ reset: false,
+ currPage: _util2.default.getFirstPage(pageStartIndex)
+ };
+ });
+ }
+ }, {
+ key: '__handleSelectRow__REACT_HOT_LOADER__',
+ value: function __handleSelectRow__REACT_HOT_LOADER__(row, isSelected, e, rowIndex) {
+ var result = true;
+ var currSelected = this.store.getSelectedRowKeys();
+ var rowKey = row[this.store.getKeyField()];
+ var selectRow = this.props.selectRow;
+
+ if (selectRow.onSelect) {
+ result = selectRow.onSelect(row, isSelected, e, rowIndex);
+ }
+
+ if (typeof result === 'undefined' || result !== false) {
+ if (selectRow.mode === _Const2.default.ROW_SELECT_SINGLE) {
+ currSelected = isSelected ? [rowKey] : [];
+ } else {
+ if (isSelected) {
+ currSelected.push(rowKey);
+ } else {
+ currSelected = currSelected.filter(function (key) {
+ return rowKey !== key;
+ });
+ }
+ }
+
+ this.store.setSelectedRowKey(currSelected);
+ this.setState(function () {
+ return {
+ selectedRowKeys: currSelected,
+ reset: false
+ };
+ });
+ }
+ }
+ }, {
+ key: '__handleEditCell__REACT_HOT_LOADER__',
+ value: function __handleEditCell__REACT_HOT_LOADER__(newVal, rowIndex, colIndex) {
+ var _this8 = this;
+
+ var beforeSaveCell = this.props.cellEdit.beforeSaveCell;
+
+ var columns = this.getColumnsDescription(this.props);
+ var fieldName = columns[colIndex].name;
+
+ var invalid = function invalid() {
+ _this8.setState(function () {
+ return {
+ data: _this8.store.get(),
+ reset: false
+ };
+ });
+ return;
+ };
+
+ if (beforeSaveCell) {
+ var beforeSaveCellCB = function beforeSaveCellCB(result) {
+ _this8.body.cancelEditCell();
+ if (result || result === undefined) {
+ _this8.editCell(newVal, rowIndex, colIndex);
+ } else {
+ invalid();
+ }
+ };
+ var props = { rowIndex: rowIndex, colIndex: colIndex };
+ var isValid = beforeSaveCell(this.state.data[rowIndex], fieldName, newVal, beforeSaveCellCB, props);
+ if (isValid === false && typeof isValid !== 'undefined') {
+ return invalid();
+ } else if (isValid === _Const2.default.AWAIT_BEFORE_CELL_EDIT) {
+ /* eslint consistent-return: 0 */
+ return isValid;
+ }
+ }
+ this.editCell(newVal, rowIndex, colIndex);
+ }
+ }, {
+ key: 'editCell',
+ value: function editCell(newVal, rowIndex, colIndex) {
+ var onCellEdit = this.props.options.onCellEdit;
+ var afterSaveCell = this.props.cellEdit.afterSaveCell;
+
+ var columns = this.getColumnsDescription(this.props);
+ var fieldName = columns[colIndex].name;
+ var props = { rowIndex: rowIndex, colIndex: colIndex };
+ if (onCellEdit) {
+ newVal = onCellEdit(this.state.data[rowIndex], fieldName, newVal);
+ }
+
+ if (this.allowRemote(_Const2.default.REMOTE_CELL_EDIT)) {
+ if (afterSaveCell) {
+ afterSaveCell(this.state.data[rowIndex], fieldName, newVal, props);
+ }
+ return;
+ }
+
+ var result = this.store.edit(newVal, rowIndex, fieldName).get();
+ this.setState(function () {
+ return {
+ data: result,
+ reset: false
+ };
+ });
+
+ if (afterSaveCell) {
+ afterSaveCell(this.state.data[rowIndex], fieldName, newVal, props);
+ }
+ }
+ }, {
+ key: 'handleAddRowAtBegin',
+ value: function handleAddRowAtBegin(newObj) {
+ try {
+ this.store.addAtBegin(newObj);
+ } catch (e) {
+ return e;
+ }
+ this._handleAfterAddingRow(newObj, true);
+ }
+ }, {
+ key: '__handleAddRow__REACT_HOT_LOADER__',
+ value: function __handleAddRow__REACT_HOT_LOADER__(newObj) {
+ var _this9 = this;
+
+ var isAsync = false;
+ var onAddRow = this.props.options.onAddRow;
+
+
+ var afterHandleAddRow = function afterHandleAddRow(errMsg) {
+ if (isAsync) {
+ _this9.toolbar.afterHandleSaveBtnClick(errMsg);
+ } else {
+ return errMsg;
+ }
+ };
+
+ var afterAddRowCB = function afterAddRowCB(errMsg) {
+ if (typeof errMsg !== 'undefined' && errMsg !== '') return afterHandleAddRow(errMsg);
+ if (_this9.allowRemote(_Const2.default.REMOTE_INSERT_ROW)) {
+ if (_this9.props.options.afterInsertRow) {
+ _this9.props.options.afterInsertRow(newObj);
+ }
+ return afterHandleAddRow();
+ }
+
+ try {
+ _this9.store.add(newObj);
+ } catch (e) {
+ return afterHandleAddRow(e.message);
+ }
+ _this9._handleAfterAddingRow(newObj, false);
+ return afterHandleAddRow();
+ };
+
+ if (onAddRow) {
+ var colInfos = this.store.getColInfos();
+ var errMsg = onAddRow(newObj, colInfos, afterAddRowCB);
+
+ if (errMsg !== '' && errMsg !== false) {
+ return errMsg;
+ } else if (typeof errMsg === 'undefined') {
+ return afterAddRowCB();
+ } else {
+ isAsync = true;
+ return !isAsync;
+ }
+ } else {
+ return afterAddRowCB();
+ }
+ }
+ }, {
+ key: 'getSizePerPage',
+ value: function getSizePerPage() {
+ return this.state.sizePerPage;
+ }
+ }, {
+ key: 'getCurrentPage',
+ value: function getCurrentPage() {
+ return this.state.currPage;
+ }
+ }, {
+ key: 'getTableDataIgnorePaging',
+ value: function getTableDataIgnorePaging() {
+ return this.store.getCurrentDisplayData();
+ }
+ }, {
+ key: '__getPageByRowKey__REACT_HOT_LOADER__',
+ value: function __getPageByRowKey__REACT_HOT_LOADER__(rowKey) {
+ var sizePerPage = this.state.sizePerPage;
+
+ var currentData = this.store.getCurrentDisplayData();
+ var keyField = this.store.getKeyField();
+ var result = currentData.findIndex(function (x) {
+ return x[keyField] === rowKey;
+ });
+ if (result > -1) {
+ return parseInt(result / sizePerPage, 10) + 1;
+ } else {
+ return result;
+ }
+ }
+ }, {
+ key: '__handleDropRow__REACT_HOT_LOADER__',
+ value: function __handleDropRow__REACT_HOT_LOADER__(rowKeys) {
+ var _this10 = this;
+
+ var dropRowKeys = rowKeys ? rowKeys : this.store.getSelectedRowKeys();
+ // add confirm before the delete action if that option is set.
+ if (dropRowKeys && dropRowKeys.length > 0) {
+ if (this.props.options.handleConfirmDeleteRow) {
+ this.props.options.handleConfirmDeleteRow(function () {
+ _this10.deleteRow(dropRowKeys);
+ }, dropRowKeys);
+ } else if (confirm('Are you sure you want to delete?')) {
+ this.deleteRow(dropRowKeys);
+ }
+ }
+ }
+ }, {
+ key: 'deleteRow',
+ value: function deleteRow(dropRowKeys) {
+ var _this11 = this;
+
+ var dropRow = this.store.getRowByKey(dropRowKeys);
+ var _props$options2 = this.props.options,
+ onDeleteRow = _props$options2.onDeleteRow,
+ afterDeleteRow = _props$options2.afterDeleteRow,
+ pageStartIndex = _props$options2.pageStartIndex;
+
+
+ if (onDeleteRow) {
+ onDeleteRow(dropRowKeys, dropRow);
+ }
+
+ this.store.setSelectedRowKey([]); // clear selected row key
+
+ if (this.allowRemote(_Const2.default.REMOTE_DROP_ROW)) {
+ if (afterDeleteRow) {
+ afterDeleteRow(dropRowKeys, dropRow);
+ }
+ return;
+ }
+
+ this.store.remove(dropRowKeys); // remove selected Row
+ var result = void 0;
+ if (this.props.pagination) {
+ // debugger;
+ var sizePerPage = this.state.sizePerPage;
+
+ var currLastPage = Math.ceil(this.store.getDataNum() / sizePerPage);
+ var currPage = this.state.currPage;
+
+ if (currPage > currLastPage) currPage = currLastPage;
+ // console.log(Util.getNormalizedPage(currPage));
+ result = this.store.page(_util2.default.getNormalizedPage(pageStartIndex, currPage), sizePerPage).get();
+ this.setState(function () {
+ return {
+ data: result,
+ selectedRowKeys: _this11.store.getSelectedRowKeys(),
+ currPage: currPage,
+ reset: false
+ };
+ });
+ } else {
+ result = this.store.get();
+ this.setState(function () {
+ return {
+ data: result,
+ reset: false,
+ selectedRowKeys: _this11.store.getSelectedRowKeys()
+ };
+ });
+ }
+ if (afterDeleteRow) {
+ afterDeleteRow(dropRowKeys, dropRow);
+ }
+ }
+ }, {
+ key: '__handleFilterData__REACT_HOT_LOADER__',
+ value: function __handleFilterData__REACT_HOT_LOADER__(filterObj) {
+ var _props4 = this.props,
+ filter = _props4.autoCollapse.filter,
+ options = _props4.options;
+ var onFilterChange = options.onFilterChange,
+ pageStartIndex = options.pageStartIndex;
+
+ if (onFilterChange) {
+ var colInfos = this.store.getColInfos();
+ onFilterChange(filterObj, colInfos);
+ }
+
+ this.setState(function () {
+ var newState = {
+ currPage: _util2.default.getFirstPage(pageStartIndex),
+ reset: false
+ };
+ if (filter) newState.expanding = [];
+ return newState;
+ });
+
+ if (this.allowRemote(_Const2.default.REMOTE_FILTER)) {
+ if (this.props.options.afterColumnFilter) {
+ this.props.options.afterColumnFilter(filterObj, this.store.getDataIgnoringPagination());
+ }
+ return;
+ }
+
+ this.store.filter(filterObj);
+
+ var sortList = this.store.getSortInfo();
+
+ if (sortList.length > 0) {
+ this.store.sort();
+ }
+
+ var result = void 0;
+
+ if (this.props.pagination) {
+ var sizePerPage = this.state.sizePerPage;
+
+ result = this.store.page(_util2.default.getNormalizedPage(pageStartIndex), sizePerPage).get();
+ } else {
+ result = this.store.get();
+ }
+ if (this.props.options.afterColumnFilter) {
+ this.props.options.afterColumnFilter(filterObj, this.store.getDataIgnoringPagination());
+ }
+ this.setState(function () {
+ return {
+ data: result,
+ reset: false
+ };
+ });
+ }
+ }, {
+ key: '__handleExportCSV__REACT_HOT_LOADER__',
+ value: function __handleExportCSV__REACT_HOT_LOADER__() {
+ var result = {};
+
+ var csvFileName = this.props.csvFileName;
+ var _props$options3 = this.props.options,
+ onExportToCSV = _props$options3.onExportToCSV,
+ exportCSVSeparator = _props$options3.exportCSVSeparator,
+ noAutoBOM = _props$options3.noAutoBOM,
+ excludeCSVHeader = _props$options3.excludeCSVHeader;
+
+ if (onExportToCSV) {
+ result = onExportToCSV();
+ } else {
+ result = this.store.getDataIgnoringPagination();
+ }
+ var separator = exportCSVSeparator || _Const2.default.DEFAULT_CSV_SEPARATOR;
+ var keys = [];
+ this.props.children.filter(function (_) {
+ return _ != null;
+ }).map(function (column) {
+ if (column.props.export === true || typeof column.props.export === 'undefined' && column.props.hidden === false) {
+ keys.push({
+ field: column.props.dataField,
+ type: column.props.csvFieldType,
+ format: column.props.csvFormat,
+ extraData: column.props.csvFormatExtraData,
+ header: column.props.csvHeader || column.props.dataField,
+ row: Number(column.props.row) || 0,
+ rowSpan: Number(column.props.rowSpan) || 1,
+ colSpan: Number(column.props.colSpan) || 1
+ });
+ }
+ });
+
+ if (_util2.default.isFunction(csvFileName)) {
+ csvFileName = csvFileName();
+ }
+
+ (0, _csv_export_util2.default)(result, keys, csvFileName, separator, noAutoBOM, excludeCSVHeader);
+ }
+ }, {
+ key: '__handleSearch__REACT_HOT_LOADER__',
+ value: function __handleSearch__REACT_HOT_LOADER__(searchText) {
+ // Set search field if this function being called outside
+ // but it's not necessary if calling fron inside.
+ if (this.toolbar) {
+ this.toolbar.setSearchInput(searchText);
+ }
+ var search = this.props.autoCollapse.search;
+ var _props$options4 = this.props.options,
+ onSearchChange = _props$options4.onSearchChange,
+ pageStartIndex = _props$options4.pageStartIndex;
+
+ if (onSearchChange) {
+ var colInfos = this.store.getColInfos();
+ onSearchChange(searchText, colInfos, this.props.multiColumnSearch);
+ }
+
+ this.setState(function () {
+ var newState = {
+ currPage: _util2.default.getFirstPage(pageStartIndex),
+ reset: false
+ };
+ if (search) newState.expanding = [];
+ return newState;
+ });
+
+ if (this.allowRemote(_Const2.default.REMOTE_SEARCH)) {
+ if (this.props.options.afterSearch) {
+ this.props.options.afterSearch(searchText, this.store.getDataIgnoringPagination());
+ }
+ return;
+ }
+
+ this.store.search(searchText);
+
+ var sortList = this.store.getSortInfo();
+
+ if (sortList.length > 0) {
+ this.store.sort();
+ }
+
+ var result = void 0;
+ if (this.props.pagination) {
+ var sizePerPage = this.state.sizePerPage;
+
+ result = this.store.page(_util2.default.getNormalizedPage(pageStartIndex), sizePerPage).get();
+ } else {
+ result = this.store.get();
+ }
+ if (this.props.options.afterSearch) {
+ this.props.options.afterSearch(searchText, this.store.getDataIgnoringPagination());
+ }
+ this.setState(function () {
+ return {
+ data: result,
+ reset: false
+ };
+ });
+ }
+ }, {
+ key: 'renderPagination',
+ value: function renderPagination() {
+ var _this12 = this;
+
+ if (this.props.pagination) {
+ var dataSize = void 0;
+ if (this.allowRemote(_Const2.default.REMOTE_PAGE)) {
+ dataSize = this.props.fetchInfo.dataTotalSize;
+ } else {
+ dataSize = this.store.getDataNum();
+ }
+ var options = this.props.options;
+
+ var withFirstAndLast = options.withFirstAndLast === undefined ? true : options.withFirstAndLast;
+ if (Math.ceil(dataSize / this.state.sizePerPage) <= 1 && this.props.ignoreSinglePage) return null;
+ return _react2.default.createElement(
+ 'div',
+ { className: 'react-bs-table-pagination' },
+ _react2.default.createElement(_PaginationList2.default, {
+ ref: function ref(node) {
+ return _this12.pagination = node;
+ },
+ version: this.props.version,
+ withFirstAndLast: withFirstAndLast,
+ alwaysShowAllBtns: options.alwaysShowAllBtns,
+ currPage: this.state.currPage,
+ changePage: this.handlePaginationData,
+ sizePerPage: this.state.sizePerPage,
+ sizePerPageList: options.sizePerPageList || _Const2.default.SIZE_PER_PAGE_LIST,
+ pageStartIndex: options.pageStartIndex,
+ paginationShowsTotal: options.paginationShowsTotal,
+ paginationSize: options.paginationSize || _Const2.default.PAGINATION_SIZE,
+ dataSize: dataSize,
+ onSizePerPageList: options.onSizePerPageList,
+ prePage: options.prePage || _Const2.default.PRE_PAGE,
+ nextPage: options.nextPage || _Const2.default.NEXT_PAGE,
+ firstPage: options.firstPage || _Const2.default.FIRST_PAGE,
+ lastPage: options.lastPage || _Const2.default.LAST_PAGE,
+ prePageTitle: options.prePageTitle || _Const2.default.PRE_PAGE_TITLE,
+ nextPageTitle: options.nextPageTitle || _Const2.default.NEXT_PAGE_TITLE,
+ firstPageTitle: options.firstPageTitle || _Const2.default.FIRST_PAGE_TITLE,
+ lastPageTitle: options.lastPageTitle || _Const2.default.LAST_PAGE_TITLE,
+ hideSizePerPage: options.hideSizePerPage,
+ sizePerPageDropDown: options.sizePerPageDropDown,
+ hidePageListOnlyOnePage: options.hidePageListOnlyOnePage,
+ paginationPanel: options.paginationPanel,
+ keepSizePerPageState: options.keepSizePerPageState,
+ open: false })
+ );
+ }
+ return null;
+ }
+ }, {
+ key: 'renderToolBar',
+ value: function renderToolBar() {
+ var _this13 = this;
+
+ var _props5 = this.props,
+ exportCSV = _props5.exportCSV,
+ selectRow = _props5.selectRow,
+ insertRow = _props5.insertRow,
+ deleteRow = _props5.deleteRow,
+ search = _props5.search,
+ children = _props5.children,
+ keyField = _props5.keyField;
+
+ var enableShowOnlySelected = selectRow && selectRow.showOnlySelected;
+ var print = typeof this.props.options.printToolBar === 'undefined' ? true : this.props.options.printToolBar;
+ if (enableShowOnlySelected || insertRow || deleteRow || search || exportCSV || this.props.options.searchPanel || this.props.options.btnGroup || this.props.options.toolBar) {
+ var columns = void 0;
+ if (Array.isArray(children)) {
+ columns = children.filter(function (_) {
+ return _ != null;
+ }).map(function (column, r) {
+ if (!column) return;
+ var props = column.props;
+
+ var isKey = props.isKey || keyField === props.dataField;
+ return {
+ isKey: isKey,
+ name: props.headerText || props.children,
+ field: props.dataField,
+ hiddenOnInsert: props.hiddenOnInsert,
+ keyValidator: props.keyValidator,
+ customInsertEditor: props.customInsertEditor,
+ // when you want same auto generate value and not allow edit, example ID field
+ autoValue: props.autoValue || false,
+ // for create editor, no params for column.editable() indicate that editor for new row
+ editable: props.editable && _util2.default.isFunction(props.editable === 'function') ? props.editable() : props.editable,
+ format: props.dataFormat ? function (value) {
+ return props.dataFormat(value, null, props.formatExtraData, r).replace(/<.*?>/g, '');
+ } : false
+ };
+ });
+ } else {
+ columns = [{
+ name: children.props.headerText || children.props.children,
+ field: children.props.dataField,
+ editable: children.props.editable,
+ customInsertEditor: children.props.customInsertEditor,
+ hiddenOnInsert: children.props.hiddenOnInsert,
+ keyValidator: children.props.keyValidator
+ }];
+ }
+ return _react2.default.createElement(
+ 'div',
+ { className: 'react-bs-table-tool-bar ' + (print ? '' : 'hidden-print') },
+ _react2.default.createElement(_ToolBar2.default, {
+ ref: function ref(node) {
+ return _this13.toolbar = node;
+ },
+ version: this.props.version,
+ defaultSearch: this.props.options.defaultSearch,
+ clearSearch: this.props.options.clearSearch,
+ searchPosition: this.props.options.searchPosition,
+ searchDelayTime: this.props.options.searchDelayTime,
+ enableInsert: insertRow,
+ enableDelete: deleteRow,
+ enableSearch: search,
+ enableExportCSV: exportCSV,
+ enableShowOnlySelected: enableShowOnlySelected,
+ columns: columns,
+ searchPlaceholder: this.props.searchPlaceholder,
+ exportCSVText: this.props.options.exportCSVText,
+ insertText: this.props.options.insertText,
+ deleteText: this.props.options.deleteText,
+ saveText: this.props.options.saveText,
+ closeText: this.props.options.closeText,
+ ignoreEditable: this.props.options.ignoreEditable,
+ onAddRow: this.handleAddRow,
+ onDropRow: this.handleDropRow,
+ onSearch: this.handleSearch,
+ onExportCSV: this.handleExportCSV,
+ onShowOnlySelected: this.handleShowOnlySelected,
+ insertModalHeader: this.props.options.insertModalHeader,
+ insertModalFooter: this.props.options.insertModalFooter,
+ insertModalBody: this.props.options.insertModalBody,
+ insertModal: this.props.options.insertModal,
+ insertBtn: this.props.options.insertBtn,
+ deleteBtn: this.props.options.deleteBtn,
+ showSelectedOnlyBtn: this.props.options.showSelectedOnlyBtn,
+ exportCSVBtn: this.props.options.exportCSVBtn,
+ clearSearchBtn: this.props.options.clearSearchBtn,
+ searchField: this.props.options.searchField,
+ searchPanel: this.props.options.searchPanel,
+ btnGroup: this.props.options.btnGroup,
+ toolBar: this.props.options.toolBar,
+ reset: this.state.reset,
+ isValidKey: this.store.isValidKey,
+ insertFailIndicator: this.props.options.insertFailIndicator || _Const2.default.INSERT_FAIL_INDICATOR })
+ );
+ } else {
+ return null;
+ }
+ }
+ }, {
+ key: 'renderTableFilter',
+ value: function renderTableFilter(columns) {
+ if (this.props.columnFilter) {
+ return _react2.default.createElement(_TableFilter2.default, { columns: columns,
+ rowSelectType: this.props.selectRow.mode,
+ onFilter: this.handleFilterData });
+ } else {
+ return null;
+ }
+ }
+ }, {
+ key: 'renderTableFooter',
+ value: function renderTableFooter(footerData, footerFormatterReturnData, columns, colGroups) {
+ var _this14 = this;
+
+ if (this.props.footer) {
+ var hideSelectColumn = true;
+ var mode = this.props.selectRow.mode;
+
+ var isSelectRowDefined = _util2.default.isSelectRowDefined(mode);
+ if (isSelectRowDefined) {
+ hideSelectColumn = this.props.selectRow.hideSelectColumn;
+ }
+ return _react2.default.createElement(
+ _TableFooter2.default,
+ {
+ ref: function ref(node) {
+ return _this14.footer = node;
+ },
+ columns: columns,
+ colGroups: colGroups,
+ footerFormatterReturnData: footerFormatterReturnData,
+ tableFooterClass: this.props.tableFooterClass,
+ style: this.props.headerStyle,
+ hideSelectColumn: hideSelectColumn,
+ expandColumnVisible: this.props.expandColumnOptions.expandColumnVisible,
+ bordered: this.props.bordered,
+ condensed: this.props.condensed,
+ isFiltered: this.filter ? true : false,
+ showStickyColumn: this.props.showStickyColumn },
+ footerData
+ );
+ }
+ return null;
+ }
+ }, {
+ key: '___scrollTop__REACT_HOT_LOADER__',
+ value: function ___scrollTop__REACT_HOT_LOADER__() {
+ var scrollTop = this.props.scrollTop;
+
+ if (scrollTop === _Const2.default.SCROLL_TOP) {
+ this.body.container.scrollTop = 0;
+ } else if (scrollTop === _Const2.default.SCROLL_BOTTOM) {
+ this.body.container.scrollTop = this.body.container.scrollHeight;
+ } else if (typeof scrollTop === 'number' && !isNaN(scrollTop)) {
+ this.body.container.scrollTop = scrollTop;
+ }
+ }
+ }, {
+ key: '___scrollHeader__REACT_HOT_LOADER__',
+ value: function ___scrollHeader__REACT_HOT_LOADER__(e) {
+ this.header.container.scrollLeft = e.currentTarget.scrollLeft;
+ }
+ }, {
+ key: '___scrollFooter__REACT_HOT_LOADER__',
+ value: function ___scrollFooter__REACT_HOT_LOADER__(e) {
+ if (this.props.footer) {
+ this.footer.container.scrollLeft = e.currentTarget.scrollLeft;
+ }
+ }
+ }, {
+ key: '_adjustTable',
+ value: function _adjustTable() {
+ this._adjustHeight();
+ if (!this.props.printable) {
+ this._adjustHeaderWidth();
+ }
+ }
+ }, {
+ key: '_adjustHeaderWidth',
+ value: function _adjustHeaderWidth() {
+ var header = this.header.getHeaderColGrouop();
+ var tbody = this.body.tbody;
+ var bodyHeader = this.body.getHeaderColGrouop();
+ var firstRow = tbody.childNodes[0];
+ var isScroll = tbody.parentNode.getBoundingClientRect().height > tbody.parentNode.parentNode.getBoundingClientRect().height;
+
+ var scrollBarWidth = isScroll ? _util2.default.getScrollBarWidth() : 0;
+ if (firstRow && this.store.getDataNum()) {
+ if (isScroll || this.isVerticalScroll !== isScroll) {
+ var cells = firstRow.childNodes;
+ for (var i = 0; i < cells.length; i++) {
+ var cell = cells[i];
+ var computedStyle = window.getComputedStyle(cell);
+ var width = parseFloat(computedStyle.width.replace('px', ''));
+ if (this.isIE) {
+ var paddingLeftWidth = parseFloat(computedStyle.paddingLeft.replace('px', ''));
+ var paddingRightWidth = parseFloat(computedStyle.paddingRight.replace('px', ''));
+ var borderRightWidth = parseFloat(computedStyle.borderRightWidth.replace('px', ''));
+ var borderLeftWidth = parseFloat(computedStyle.borderLeftWidth.replace('px', ''));
+ width = width + paddingLeftWidth + paddingRightWidth + borderRightWidth + borderLeftWidth;
+ }
+ var lastPadding = cells.length - 1 === i ? scrollBarWidth : 0;
+ if (width <= 0) {
+ width = 120;
+ cell.width = width + lastPadding + 'px';
+ }
+ var result = width + lastPadding + 'px';
+ header[i].style.width = result;
+ header[i].style.minWidth = result;
+ if (cells.length - 1 === i) {
+ bodyHeader[i].style.width = width + 'px';
+ bodyHeader[i].style.minWidth = width + 'px';
+ } else {
+ bodyHeader[i].style.width = result;
+ bodyHeader[i].style.minWidth = result;
+ }
+ }
+ }
+ } else {
+ for (var _i in bodyHeader) {
+ if (bodyHeader.hasOwnProperty(_i)) {
+ var child = bodyHeader[_i];
+ if (child.style) {
+ if (child.style.width) {
+ header[_i].style.width = child.style.width;
+ }
+ if (child.style.minWidth) {
+ header[_i].style.minWidth = child.style.minWidth;
+ }
+ }
+ }
+ }
+ }
+ this.isVerticalScroll = isScroll;
+ }
+ }, {
+ key: '_adjustHeight',
+ value: function _adjustHeight() {
+ var height = this.props.height;
+ var maxHeight = this.props.maxHeight;
+
+ if (typeof height === 'number' && !isNaN(height) || height.indexOf('%') === -1) {
+ this.body.container.style.height = parseFloat(height, 10) - this.header.container.offsetHeight + 'px';
+ }
+ if (maxHeight) {
+ maxHeight = typeof maxHeight === 'number' ? maxHeight : parseInt(maxHeight.replace('px', ''), 10);
+
+ this.body.container.style.maxHeight = maxHeight - this.header.container.offsetHeight + 'px';
+ }
+ }
+ }, {
+ key: '_handleAfterAddingRow',
+ value: function _handleAfterAddingRow(newObj, atTheBeginning) {
+ var result = void 0;
+ if (this.props.pagination) {
+ // if pagination is enabled and inserting row at the end,
+ // change page to the last page
+ // otherwise, change it to the first page
+ var sizePerPage = this.state.sizePerPage;
+
+
+ if (atTheBeginning) {
+ var pageStartIndex = this.props.options.pageStartIndex;
+
+ result = this.store.page(_util2.default.getNormalizedPage(pageStartIndex), sizePerPage).get();
+ this.setState(function () {
+ return {
+ data: result,
+ currPage: _util2.default.getFirstPage(pageStartIndex),
+ reset: false
+ };
+ });
+ } else {
+ var currLastPage = Math.ceil(this.store.getDataNum() / sizePerPage);
+ result = this.store.page(currLastPage, sizePerPage).get();
+ this.setState(function () {
+ return {
+ data: result,
+ currPage: currLastPage,
+ reset: false
+ };
+ });
+ }
+ } else {
+ result = this.store.get();
+ this.setState(function () {
+ return {
+ data: result,
+ reset: false
+ };
+ });
+ }
+
+ if (this.props.options.afterInsertRow) {
+ this.props.options.afterInsertRow(newObj);
+ }
+ }
+ }]);
+
+ return BootstrapTable;
+}(_react.Component);
+
+BootstrapTable.propTypes = {
+ keyField: _propTypes2.default.string,
+ height: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.number]),
+ maxHeight: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.number]),
+ data: _propTypes2.default.oneOfType([_propTypes2.default.array, _propTypes2.default.object]),
+ version: _propTypes2.default.string, // bootstrap version
+ remote: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.func]), // remote data, default is false
+ replace: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.func]),
+ scrollTop: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.number]),
+ striped: _propTypes2.default.bool,
+ bordered: _propTypes2.default.bool,
+ hover: _propTypes2.default.bool,
+ condensed: _propTypes2.default.bool,
+ pagination: _propTypes2.default.bool,
+ printable: _propTypes2.default.bool,
+ withoutTabIndex: _propTypes2.default.bool,
+ keyBoardNav: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.object]),
+ searchPlaceholder: _propTypes2.default.string,
+ selectRow: _propTypes2.default.shape({
+ mode: _propTypes2.default.oneOf([_Const2.default.ROW_SELECT_NONE, _Const2.default.ROW_SELECT_SINGLE, _Const2.default.ROW_SELECT_MULTI]),
+ customComponent: _propTypes2.default.func,
+ bgColor: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.func]),
+ selected: _propTypes2.default.array,
+ onSelect: _propTypes2.default.func,
+ onSelectAll: _propTypes2.default.func,
+ clickToSelect: _propTypes2.default.bool,
+ hideSelectColumn: _propTypes2.default.bool,
+ clickToSelectAndEditCell: _propTypes2.default.bool,
+ clickToExpand: _propTypes2.default.bool,
+ showOnlySelected: _propTypes2.default.bool,
+ unselectable: _propTypes2.default.array,
+ columnWidth: _propTypes2.default.oneOfType([_propTypes2.default.number, _propTypes2.default.string]),
+ onlyUnselectVisible: _propTypes2.default.bool
+ }),
+ cellEdit: _propTypes2.default.shape({
+ mode: _propTypes2.default.string,
+ blurToSave: _propTypes2.default.bool,
+ blurToEscape: _propTypes2.default.bool,
+ beforeSaveCell: _propTypes2.default.func,
+ afterSaveCell: _propTypes2.default.func,
+ nonEditableRows: _propTypes2.default.func
+ }),
+ insertRow: _propTypes2.default.bool,
+ deleteRow: _propTypes2.default.bool,
+ search: _propTypes2.default.bool,
+ multiColumnSearch: _propTypes2.default.bool,
+ strictSearch: _propTypes2.default.bool,
+ columnFilter: _propTypes2.default.bool,
+ trClassName: _propTypes2.default.any,
+ trStyle: _propTypes2.default.any,
+ tableStyle: _propTypes2.default.object,
+ containerStyle: _propTypes2.default.object,
+ headerStyle: _propTypes2.default.object,
+ bodyStyle: _propTypes2.default.object,
+ containerClass: _propTypes2.default.string,
+ tableContainerClass: _propTypes2.default.string,
+ headerContainerClass: _propTypes2.default.string,
+ bodyContainerClass: _propTypes2.default.string,
+ tableHeaderClass: _propTypes2.default.string,
+ tableBodyClass: _propTypes2.default.string,
+ tableFooterClass: _propTypes2.default.string,
+ options: _propTypes2.default.shape({
+ clearSearch: _propTypes2.default.bool,
+ sortName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.array]),
+ sortOrder: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.array]),
+ defaultSortName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.array]),
+ defaultSortOrder: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.array]),
+ sortIndicator: _propTypes2.default.bool,
+ afterTableComplete: _propTypes2.default.func,
+ afterDeleteRow: _propTypes2.default.func,
+ afterInsertRow: _propTypes2.default.func,
+ afterSearch: _propTypes2.default.func,
+ afterColumnFilter: _propTypes2.default.func,
+ onRowClick: _propTypes2.default.func,
+ onRowDoubleClick: _propTypes2.default.func,
+ page: _propTypes2.default.number,
+ pageStartIndex: _propTypes2.default.number,
+ paginationShowsTotal: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.func]),
+ sizePerPageList: _propTypes2.default.array,
+ sizePerPage: _propTypes2.default.number,
+ paginationSize: _propTypes2.default.number,
+ paginationPosition: _propTypes2.default.oneOf([_Const2.default.PAGINATION_POS_TOP, _Const2.default.PAGINATION_POS_BOTTOM, _Const2.default.PAGINATION_POS_BOTH]),
+ toolbarPosition: _propTypes2.default.oneOf([_Const2.default.TOOLBAR_POS_TOP, _Const2.default.TOOLBAR_POS_BOTTOM, _Const2.default.TOOLBAR_POS_BOTH]),
+ hideSizePerPage: _propTypes2.default.bool,
+ hidePageListOnlyOnePage: _propTypes2.default.bool,
+ alwaysShowAllBtns: _propTypes2.default.bool,
+ withFirstAndLast: _propTypes2.default.bool,
+ keepSizePerPageState: _propTypes2.default.bool,
+ onSortChange: _propTypes2.default.func,
+ onPageChange: _propTypes2.default.func,
+ onSizePerPageList: _propTypes2.default.func,
+ onFilterChange: _propTypes2.default.func,
+ onSearchChange: _propTypes2.default.func,
+ onAddRow: _propTypes2.default.func,
+ onExportToCSV: _propTypes2.default.func,
+ onCellEdit: _propTypes2.default.func,
+ noDataText: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),
+ withoutNoDataText: _propTypes2.default.bool,
+ handleConfirmDeleteRow: _propTypes2.default.func,
+ prePage: _propTypes2.default.any,
+ nextPage: _propTypes2.default.any,
+ firstPage: _propTypes2.default.any,
+ lastPage: _propTypes2.default.any,
+ prePageTitle: _propTypes2.default.string,
+ nextPageTitle: _propTypes2.default.string,
+ firstPageTitle: _propTypes2.default.string,
+ lastPageTitle: _propTypes2.default.string,
+ searchDelayTime: _propTypes2.default.number,
+ excludeCSVHeader: _propTypes2.default.bool,
+ exportCSVText: _propTypes2.default.string,
+ exportCSVSeparator: _propTypes2.default.string,
+ insertText: _propTypes2.default.string,
+ deleteText: _propTypes2.default.string,
+ saveText: _propTypes2.default.string,
+ closeText: _propTypes2.default.string,
+ ignoreEditable: _propTypes2.default.bool,
+ defaultSearch: _propTypes2.default.string,
+ insertModalHeader: _propTypes2.default.func,
+ insertModalBody: _propTypes2.default.func,
+ insertModalFooter: _propTypes2.default.func,
+ insertModal: _propTypes2.default.func,
+ insertBtn: _propTypes2.default.func,
+ deleteBtn: _propTypes2.default.func,
+ showSelectedOnlyBtn: _propTypes2.default.func,
+ exportCSVBtn: _propTypes2.default.func,
+ clearSearchBtn: _propTypes2.default.func,
+ searchField: _propTypes2.default.func,
+ searchPanel: _propTypes2.default.func,
+ btnGroup: _propTypes2.default.func,
+ toolBar: _propTypes2.default.func,
+ sizePerPageDropDown: _propTypes2.default.func,
+ paginationPanel: _propTypes2.default.func,
+ searchPosition: _propTypes2.default.string,
+ expandRowBgColor: _propTypes2.default.string,
+ expandBy: _propTypes2.default.string,
+ expanding: _propTypes2.default.array,
+ onExpand: _propTypes2.default.func,
+ onlyOneExpanding: _propTypes2.default.bool,
+ expandBodyClass: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.func]),
+ expandParentClass: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.func]),
+ beforeShowError: _propTypes2.default.func,
+ printToolBar: _propTypes2.default.bool,
+ insertFailIndicator: _propTypes2.default.string,
+ noAutoBOM: _propTypes2.default.bool,
+ expandAll: _propTypes2.default.bool,
+ hideRowOnExpand: _propTypes2.default.bool
+ }),
+ fetchInfo: _propTypes2.default.shape({
+ dataTotalSize: _propTypes2.default.number
+ }),
+ renderAlert: _propTypes2.default.bool,
+ exportCSV: _propTypes2.default.bool,
+ csvFileName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.func]),
+ ignoreSinglePage: _propTypes2.default.bool,
+ expandableRow: _propTypes2.default.func,
+ expandComponent: _propTypes2.default.func,
+ autoCollapse: _propTypes2.default.shape({
+ sort: _propTypes2.default.bool,
+ filter: _propTypes2.default.bool,
+ search: _propTypes2.default.bool
+ }),
+ expandColumnOptions: _propTypes2.default.shape({
+ columnWidth: _propTypes2.default.oneOfType([_propTypes2.default.number, _propTypes2.default.string]),
+ expandColumnVisible: _propTypes2.default.bool,
+ expandColumnComponent: _propTypes2.default.func,
+ expandedColumnHeaderComponent: _propTypes2.default.func,
+ expandColumnBeforeSelectColumn: _propTypes2.default.bool
+ }),
+ footer: _propTypes2.default.bool
+};
+BootstrapTable.defaultProps = {
+ version: '3',
+ replace: false,
+ scrollTop: undefined,
+ expandComponent: undefined,
+ expandableRow: undefined,
+ expandColumnOptions: {
+ expandColumnVisible: false,
+ expandColumnComponent: undefined,
+ expandedColumnHeaderComponent: undefined,
+ expandColumnBeforeSelectColumn: true
+ },
+ height: '100%',
+ maxHeight: undefined,
+ striped: false,
+ bordered: true,
+ hover: false,
+ condensed: false,
+ pagination: false,
+ printable: false,
+ withoutTabIndex: false,
+ keyBoardNav: false,
+ searchPlaceholder: undefined,
+ selectRow: {
+ mode: _Const2.default.ROW_SELECT_NONE,
+ bgColor: _Const2.default.ROW_SELECT_BG_COLOR,
+ selected: [],
+ onSelect: undefined,
+ onSelectAll: undefined,
+ clickToSelect: false,
+ hideSelectColumn: false,
+ clickToSelectAndEditCell: false,
+ clickToExpand: false,
+ showOnlySelected: false,
+ unselectable: [],
+ customComponent: undefined,
+ onlyUnselectVisible: false
+ },
+ cellEdit: {
+ mode: _Const2.default.CELL_EDIT_NONE,
+ blurToSave: false,
+ blurToEscape: false,
+ beforeSaveCell: undefined,
+ afterSaveCell: undefined,
+ nonEditableRows: undefined
+ },
+ insertRow: false,
+ deleteRow: false,
+ search: false,
+ multiColumnSearch: false,
+ strictSearch: undefined,
+ multiColumnSort: 1,
+ columnFilter: false,
+ trClassName: '',
+ trStyle: undefined,
+ tableStyle: undefined,
+ containerStyle: undefined,
+ headerStyle: undefined,
+ bodyStyle: undefined,
+ containerClass: null,
+ tableContainerClass: null,
+ headerContainerClass: null,
+ bodyContainerClass: null,
+ tableHeaderClass: null,
+ tableBodyClass: null,
+ tableFooterClass: null,
+ options: {
+ clearSearch: false,
+ sortName: undefined,
+ sortOrder: undefined,
+ defaultSortName: undefined,
+ defaultSortOrder: undefined,
+ sortIndicator: true,
+ afterTableComplete: undefined,
+ afterDeleteRow: undefined,
+ afterInsertRow: undefined,
+ afterSearch: undefined,
+ afterColumnFilter: undefined,
+ onRowClick: undefined,
+ onRowDoubleClick: undefined,
+ onMouseLeave: undefined,
+ onMouseEnter: undefined,
+ onRowMouseOut: undefined,
+ onRowMouseOver: undefined,
+ page: undefined,
+ paginationShowsTotal: false,
+ sizePerPageList: _Const2.default.SIZE_PER_PAGE_LIST,
+ sizePerPage: undefined,
+ paginationSize: _Const2.default.PAGINATION_SIZE,
+ paginationPosition: _Const2.default.PAGINATION_POS_BOTTOM,
+ toolbarPosition: _Const2.default.TOOLBAR_POS_TOP,
+ hideSizePerPage: false,
+ hidePageListOnlyOnePage: false,
+ alwaysShowAllBtns: false,
+ withFirstAndLast: true,
+ keepSizePerPageState: false,
+ onSizePerPageList: undefined,
+ noDataText: undefined,
+ withoutNoDataText: false,
+ handleConfirmDeleteRow: undefined,
+ prePage: _Const2.default.PRE_PAGE,
+ nextPage: _Const2.default.NEXT_PAGE,
+ firstPage: _Const2.default.FIRST_PAGE,
+ lastPage: _Const2.default.LAST_PAGE,
+ prePageTitle: _Const2.default.PRE_PAGE_TITLE,
+ nextPageTitle: _Const2.default.NEXT_PAGE_TITLE,
+ firstPageTitle: _Const2.default.FIRST_PAGE_TITLE,
+ lastPageTitle: _Const2.default.LAST_PAGE_TITLE,
+ pageStartIndex: 1,
+ searchDelayTime: undefined,
+ excludeCSVHeader: false,
+ exportCSVText: _Const2.default.EXPORT_CSV_TEXT,
+ exportCSVSeparator: _Const2.default.DEFAULT_CSV_SEPARATOR,
+ insertText: _Const2.default.INSERT_BTN_TEXT,
+ deleteText: _Const2.default.DELETE_BTN_TEXT,
+ saveText: _Const2.default.SAVE_BTN_TEXT,
+ closeText: _Const2.default.CLOSE_BTN_TEXT,
+ ignoreEditable: false,
+ defaultSearch: '',
+ insertModalHeader: undefined,
+ insertModalBody: undefined,
+ insertModalFooter: undefined,
+ insertModal: undefined,
+ insertBtn: undefined,
+ deleteBtn: undefined,
+ showSelectedOnlyBtn: undefined,
+ exportCSVBtn: undefined,
+ clearSearchBtn: undefined,
+ searchField: undefined,
+ searchPanel: undefined,
+ btnGroup: undefined,
+ toolBar: undefined,
+ sizePerPageDropDown: undefined,
+ paginationPanel: undefined,
+ searchPosition: 'right',
+ expandRowBgColor: undefined,
+ expandBy: _Const2.default.EXPAND_BY_ROW,
+ expanding: [],
+ onExpand: undefined,
+ onlyOneExpanding: false,
+ expandBodyClass: null,
+ expandParentClass: null,
+ beforeShowError: undefined,
+ printToolBar: true,
+ insertFailIndicator: _Const2.default.INSERT_FAIL_INDICATOR,
+ noAutoBOM: true,
+ expandAll: false,
+ hideRowOnExpand: false
+ },
+ fetchInfo: {
+ dataTotalSize: 0
+ },
+ renderAlert: true,
+ exportCSV: false,
+ csvFileName: 'spreadsheet.csv',
+ ignoreSinglePage: false,
+ autoCollapse: {
+ sort: _Const2.default.AUTO_COLLAPSE_WHEN_SORT,
+ filter: _Const2.default.AUTO_COLLAPSE_WHEN_FILTER,
+ search: _Const2.default.AUTO_COLLAPSE_WHEN_SEARCH
+ },
+ footer: false
+};
+
+var _default = BootstrapTable;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(BootstrapTable, 'BootstrapTable', '/home/nogi/nogi/forks/react-bootstrap-table/src/BootstrapTable.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/BootstrapTable.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/Const.js b/lib/Const.js
new file mode 100644
index 000000000..35ad38129
--- /dev/null
+++ b/lib/Const.js
@@ -0,0 +1,100 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+var CONST_VAR = {
+ SORT_DESC: 'desc',
+ SORT_ASC: 'asc',
+ AWAIT_BEFORE_CELL_EDIT: 1,
+ SIZE_PER_PAGE: 10,
+ NEXT_PAGE: '>',
+ NEXT_PAGE_TITLE: 'next page',
+ LAST_PAGE: '>>',
+ LAST_PAGE_TITLE: 'last page',
+ PRE_PAGE: '<',
+ PRE_PAGE_TITLE: 'previous page',
+ FIRST_PAGE: '<<',
+ FIRST_PAGE_TITLE: 'first page',
+ PAGE_START_INDEX: 1,
+ ROW_SELECT_BG_COLOR: '',
+ ROW_SELECT_NONE: 'none',
+ ROW_SELECT_SINGLE: 'radio',
+ ROW_SELECT_MULTI: 'checkbox',
+ CELL_EDIT_NONE: 'none',
+ CELL_EDIT_CLICK: 'click',
+ CELL_EDIT_DBCLICK: 'dbclick',
+ SIZE_PER_PAGE_LIST: [10, 25, 30, 50],
+ PAGINATION_SIZE: 5,
+ PAGINATION_POS_TOP: 'top',
+ PAGINATION_POS_BOTTOM: 'bottom',
+ PAGINATION_POS_BOTH: 'both',
+ TOOLBAR_POS_TOP: 'top',
+ TOOLBAR_POS_BOTTOM: 'bottom',
+ TOOLBAR_POS_BOTH: 'both',
+ NO_DATA_TEXT: 'There is no data to display',
+ SHOW_ONLY_SELECT: 'Show Selected Only',
+ SHOW_ALL: 'Show All',
+ EXPORT_CSV_TEXT: 'Export to CSV',
+ INSERT_BTN_TEXT: 'New',
+ DELETE_BTN_TEXT: 'Delete',
+ SAVE_BTN_TEXT: 'Save',
+ CLOSE_BTN_TEXT: 'Close',
+ FILTER_DELAY: 500,
+ SCROLL_TOP: 'Top',
+ SCROLL_BOTTOM: 'Bottom',
+ FILTER_TYPE: {
+ TEXT: 'TextFilter',
+ REGEX: 'RegexFilter',
+ SELECT: 'SelectFilter',
+ NUMBER: 'NumberFilter',
+ DATE: 'DateFilter',
+ CUSTOM: 'CustomFilter',
+ ARRAY: 'ArrayFilter'
+ },
+ FILTER_COND_EQ: 'eq',
+ FILTER_COND_LIKE: 'like',
+ EXPAND_BY_ROW: 'row',
+ EXPAND_BY_COL: 'column',
+ REMOTE_SORT: 'sort',
+ REMOTE_PAGE: 'pagination',
+ REMOTE_CELL_EDIT: 'cellEdit',
+ REMOTE_INSERT_ROW: 'insertRow',
+ REMOTE_DROP_ROW: 'dropRow',
+ REMOTE_FILTER: 'filter',
+ REMOTE_SEARCH: 'search',
+ REMOTE_EXPORT_CSV: 'exportCSV',
+ INSERT_FAIL_INDICATOR: 'Validation errors, please check!',
+ DEFAULT_CSV_SEPARATOR: ',',
+ CSV_STRING_TYPE: 'string',
+ CSV_NUMBER_TYPE: 'number',
+ AUTO_COLLAPSE_WHEN_SORT: false,
+ AUTO_COLLAPSE_WHEN_SEARCH: false,
+ AUTO_COLLAPSE_WHEN_FILTER: false
+};
+
+CONST_VAR.REMOTE = {};
+CONST_VAR.REMOTE[CONST_VAR.REMOTE_SORT] = false;
+CONST_VAR.REMOTE[CONST_VAR.REMOTE_PAGE] = false;
+CONST_VAR.REMOTE[CONST_VAR.REMOTE_CELL_EDIT] = false;
+CONST_VAR.REMOTE[CONST_VAR.REMOTE_INSERT_ROW] = false;
+CONST_VAR.REMOTE[CONST_VAR.REMOTE_DROP_ROW] = false;
+CONST_VAR.REMOTE[CONST_VAR.REMOTE_FILTER] = false;
+CONST_VAR.REMOTE[CONST_VAR.REMOTE_SEARCH] = false;
+CONST_VAR.REMOTE[CONST_VAR.REMOTE_EXPORT_CSV] = false;
+
+var _default = CONST_VAR;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(CONST_VAR, 'CONST_VAR', '/home/nogi/nogi/forks/react-bootstrap-table/src/Const.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/Const.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/Editor.js b/lib/Editor.js
new file mode 100644
index 000000000..cf867a64d
--- /dev/null
+++ b/lib/Editor.js
@@ -0,0 +1,145 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _util = require('./util');
+
+var _util2 = _interopRequireDefault(_util);
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var editor = function editor(editable, attr, format, editorClass, defaultValue, ignoreEditable, row) {
+ if (editable === true || editable === false && ignoreEditable || typeof editable === 'string') {
+ // simple declare
+ var type = editable ? 'text' : editable;
+ return _react2.default.createElement('input', _extends({}, attr, { type: type, defaultValue: defaultValue,
+ className: (editorClass || '') + ' form-control editor edit-text' }));
+ } else if (!editable) {
+ var _type = editable ? 'text' : editable;
+ return _react2.default.createElement('input', _extends({}, attr, { type: _type, defaultValue: defaultValue,
+ disabled: 'disabled',
+ className: (editorClass || '') + ' form-control editor edit-text' }));
+ } else if (editable && (editable.type === undefined || editable.type === null || editable.type.trim() === '')) {
+ var _type2 = editable ? 'text' : editable;
+ return _react2.default.createElement('input', _extends({}, attr, { type: _type2, defaultValue: defaultValue,
+ className: (editorClass || '') + ' form-control editor edit-text' }));
+ } else if (editable.type) {
+ // standard declare
+ // put style if exist
+ editable.style && (attr.style = editable.style);
+ // put class if exist
+ attr.className = (editorClass || '') + ' form-control editor edit-' + editable.type + (editable.className ? ' ' + editable.className : '');
+
+ if (editable.type === 'select') {
+ // process select input
+ var options = [];
+ var values = editable.options.values;
+ var _editable$options = editable.options,
+ textKey = _editable$options.textKey,
+ valueKey = _editable$options.valueKey;
+
+ if (_util2.default.isFunction(values)) {
+ values = values(row);
+ }
+ if (Array.isArray(values)) {
+ // only can use arrray data for options
+ var text = void 0;
+ var value = void 0;
+ options = values.map(function (option, i) {
+ if ((typeof option === 'undefined' ? 'undefined' : _typeof(option)) === 'object') {
+ text = textKey ? option[textKey] : option.text;
+ value = valueKey ? option[valueKey] : option.value;
+ } else {
+ text = format ? format(option) : option;
+ value = option;
+ }
+ return _react2.default.createElement(
+ 'option',
+ { key: 'option' + i, value: value },
+ text
+ );
+ });
+ }
+ return _react2.default.createElement(
+ 'select',
+ _extends({}, attr, { defaultValue: defaultValue }),
+ options
+ );
+ } else if (editable.type === 'textarea') {
+ // process textarea input
+ // put other if exist
+ editable.cols && (attr.cols = editable.cols);
+ editable.rows && (attr.rows = editable.rows);
+ var saveBtn = void 0;
+ var keyUpHandler = attr.onKeyDown;
+ if (keyUpHandler) {
+ attr.onKeyDown = function (e) {
+ if (e.keyCode !== 13) {
+ // not Pressed ENTER
+ keyUpHandler(e);
+ }
+ };
+ saveBtn = _react2.default.createElement(
+ 'button',
+ {
+ className: 'btn btn-info btn-xs textarea-save-btn',
+ onClick: keyUpHandler },
+ 'save'
+ );
+ }
+ return _react2.default.createElement(
+ 'div',
+ null,
+ _react2.default.createElement('textarea', _extends({}, attr, { defaultValue: defaultValue })),
+ saveBtn
+ );
+ } else if (editable.type === 'checkbox') {
+ var _values = 'true:false';
+ if (editable.options && editable.options.values) {
+ // values = editable.options.values.split(':');
+ _values = editable.options.values;
+ }
+ attr.className = attr.className.replace('form-control', '');
+ attr.className += ' checkbox pull-right';
+
+ var checked = defaultValue && defaultValue.toString() === _values.split(':')[0] ? true : false;
+
+ return _react2.default.createElement('input', _extends({}, attr, { type: 'checkbox',
+ value: _values, defaultChecked: checked }));
+ } else if (editable.type === 'datetime') {
+ return _react2.default.createElement('input', _extends({}, attr, { type: 'datetime-local', defaultValue: defaultValue }));
+ } else {
+ // process other input type. as password,url,email...
+ return _react2.default.createElement('input', _extends({}, attr, { type: editable.type, defaultValue: defaultValue }));
+ }
+ }
+ // default return for other case of editable
+ return _react2.default.createElement('input', _extends({}, attr, { type: 'text',
+ className: (editorClass || '') + ' form-control editor edit-text' }));
+};
+
+var _default = editor;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(editor, 'editor', '/home/nogi/nogi/forks/react-bootstrap-table/src/Editor.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/Editor.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/ExpandComponent.js b/lib/ExpandComponent.js
new file mode 100644
index 000000000..cef46cd67
--- /dev/null
+++ b/lib/ExpandComponent.js
@@ -0,0 +1,78 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _classnames = require('classnames');
+
+var _classnames2 = _interopRequireDefault(_classnames);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; } /* eslint max-len: 0 */
+/* eslint no-nested-ternary: 0 */
+
+
+var ExpandComponent = function (_Component) {
+ _inherits(ExpandComponent, _Component);
+
+ function ExpandComponent() {
+ _classCallCheck(this, ExpandComponent);
+
+ return _possibleConstructorReturn(this, (ExpandComponent.__proto__ || Object.getPrototypeOf(ExpandComponent)).apply(this, arguments));
+ }
+
+ _createClass(ExpandComponent, [{
+ key: 'render',
+ value: function render() {
+ var className = this.props.className;
+
+ var trCss = {
+ style: {
+ backgroundColor: this.props.bgColor
+ },
+ className: (0, _classnames2.default)(className)
+ };
+ return _react2.default.createElement(
+ 'tr',
+ _extends({ hidden: this.props.hidden, width: this.props.width }, trCss),
+ _react2.default.createElement(
+ 'td',
+ { colSpan: this.props.colSpan },
+ this.props.children
+ )
+ );
+ }
+ }]);
+
+ return ExpandComponent;
+}(_react.Component);
+
+var _default = ExpandComponent;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(ExpandComponent, 'ExpandComponent', '/home/nogi/nogi/forks/react-bootstrap-table/src/ExpandComponent.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/ExpandComponent.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/ExpandRowHeaderColumn.js b/lib/ExpandRowHeaderColumn.js
new file mode 100644
index 000000000..f44705336
--- /dev/null
+++ b/lib/ExpandRowHeaderColumn.js
@@ -0,0 +1,92 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var ExpandRowHeaderColumn = function (_Component) {
+ _inherits(ExpandRowHeaderColumn, _Component);
+
+ function ExpandRowHeaderColumn(props) {
+ _classCallCheck(this, ExpandRowHeaderColumn);
+
+ var _this = _possibleConstructorReturn(this, (ExpandRowHeaderColumn.__proto__ || Object.getPrototypeOf(ExpandRowHeaderColumn)).call(this, props));
+
+ _this.toggleExpandAllChilds = _this.toggleExpandAllChilds.bind(_this);
+ return _this;
+ }
+
+ _createClass(ExpandRowHeaderColumn, [{
+ key: 'toggleExpandAllChilds',
+ value: function toggleExpandAllChilds() {
+ this.props.toggleExpandAllChilds();
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _props = this.props,
+ expandedColumnHeaderComponent = _props.expandedColumnHeaderComponent,
+ noAnyExpand = _props.noAnyExpand,
+ expandAll = _props.expandAll;
+
+ var expandedHeaderComponent = noAnyExpand ? _react2.default.createElement('span', { className: 'fa fa-plus glyphicon glyphicon-plus' }) : _react2.default.createElement('span', { className: 'fa fa-minus glyphicon glyphicon-minus' });
+ var ExpandedColumnHeaderComponent = expandedColumnHeaderComponent;
+
+ return _react2.default.createElement(
+ 'th',
+ { rowSpan: this.props.rowCount, style: { textAlign: 'center' },
+ className: 'react-bs-table-expand-cell',
+ 'data-is-only-head': false },
+ expandAll ? _react2.default.createElement(
+ 'div',
+ { onClick: this.toggleExpandAllChilds },
+ expandedColumnHeaderComponent ? _react2.default.createElement(ExpandedColumnHeaderComponent, {
+ anyExpand: !noAnyExpand }) : expandedHeaderComponent
+ ) : null
+ );
+ }
+ }]);
+
+ return ExpandRowHeaderColumn;
+}(_react.Component);
+
+ExpandRowHeaderColumn.propTypes = {
+ expandedColumnHeaderComponent: _propTypes2.default.func,
+ rowCount: _propTypes2.default.number,
+ noAnyExpand: _propTypes2.default.bool,
+ expandAll: _propTypes2.default.bool,
+ toggleExpandAllChilds: _propTypes2.default.func
+};
+var _default = ExpandRowHeaderColumn;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(ExpandRowHeaderColumn, 'ExpandRowHeaderColumn', '/home/nogi/nogi/forks/react-bootstrap-table/src/ExpandRowHeaderColumn.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/ExpandRowHeaderColumn.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/Filter.js b/lib/Filter.js
new file mode 100644
index 000000000..bf26f200d
--- /dev/null
+++ b/lib/Filter.js
@@ -0,0 +1,84 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.Filter = undefined;
+
+var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _Const = require('./Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+var _events = require('events');
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var Filter = exports.Filter = function (_EventEmitter) {
+ _inherits(Filter, _EventEmitter);
+
+ function Filter(data) {
+ _classCallCheck(this, Filter);
+
+ var _this = _possibleConstructorReturn(this, (Filter.__proto__ || Object.getPrototypeOf(Filter)).call(this, data));
+
+ _this.currentFilter = {};
+ return _this;
+ }
+
+ _createClass(Filter, [{
+ key: 'handleFilter',
+ value: function handleFilter(dataField, value, type, filterObj) {
+ var filterType = type || _Const2.default.FILTER_TYPE.CUSTOM;
+
+ var props = {
+ cond: filterObj.condition // Only for select and text filter
+ };
+
+ if (value !== null && (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object') {
+ // value of the filter is an object
+ var hasValue = true;
+ for (var prop in value) {
+ if (!value[prop] || value[prop] === '') {
+ hasValue = false;
+ break;
+ }
+ }
+ // if one of the object properties is undefined or empty, we remove the filter
+ if (hasValue) {
+ this.currentFilter[dataField] = { value: value, type: filterType, props: props };
+ } else {
+ delete this.currentFilter[dataField];
+ }
+ } else if (!value || value.trim() === '') {
+ delete this.currentFilter[dataField];
+ } else {
+ this.currentFilter[dataField] = { value: value.trim(), type: filterType, props: props };
+ }
+ this.emit('onFilterChange', this.currentFilter);
+ }
+ }]);
+
+ return Filter;
+}(_events.EventEmitter);
+
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(Filter, 'Filter', '/home/nogi/nogi/forks/react-bootstrap-table/src/Filter.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/Notification.js b/lib/Notification.js
new file mode 100644
index 000000000..9c48441ac
--- /dev/null
+++ b/lib/Notification.js
@@ -0,0 +1,38 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.notice = undefined;
+
+var _reactSAlert = require('react-s-alert');
+
+var _reactSAlert2 = _interopRequireDefault(_reactSAlert);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var notice = function notice(type, msg, title) {
+ var titleHTML = title ? '' + title + '
' : '';
+
+ var bodyHTML = '\n ' + titleHTML + '\n \n \n ' + msg + '\n
\n ';
+
+ _reactSAlert2.default.error(bodyHTML, {
+ position: 'top-right',
+ timeout: 3000,
+ html: true,
+ effect: 'scale'
+ });
+};
+
+exports.notice = notice;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(notice, 'notice', '/home/nogi/nogi/forks/react-bootstrap-table/src/Notification.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/SelectRowHeaderColumn.js b/lib/SelectRowHeaderColumn.js
new file mode 100644
index 000000000..be6d117f7
--- /dev/null
+++ b/lib/SelectRowHeaderColumn.js
@@ -0,0 +1,67 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var SelectRowHeaderColumn = function (_Component) {
+ _inherits(SelectRowHeaderColumn, _Component);
+
+ function SelectRowHeaderColumn() {
+ _classCallCheck(this, SelectRowHeaderColumn);
+
+ return _possibleConstructorReturn(this, (SelectRowHeaderColumn.__proto__ || Object.getPrototypeOf(SelectRowHeaderColumn)).apply(this, arguments));
+ }
+
+ _createClass(SelectRowHeaderColumn, [{
+ key: 'render',
+ value: function render() {
+ return _react2.default.createElement(
+ 'th',
+ { rowSpan: this.props.rowCount, style: { textAlign: 'center' },
+ 'data-is-only-head': false },
+ this.props.children
+ );
+ }
+ }]);
+
+ return SelectRowHeaderColumn;
+}(_react.Component);
+
+SelectRowHeaderColumn.propTypes = {
+ children: _propTypes2.default.node,
+ rowCount: _propTypes2.default.number
+};
+var _default = SelectRowHeaderColumn;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(SelectRowHeaderColumn, 'SelectRowHeaderColumn', '/home/nogi/nogi/forks/react-bootstrap-table/src/SelectRowHeaderColumn.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/SelectRowHeaderColumn.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/TableBody.js b/lib/TableBody.js
new file mode 100644
index 000000000..0fc54dab9
--- /dev/null
+++ b/lib/TableBody.js
@@ -0,0 +1,802 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _util = require('./util');
+
+var _util2 = _interopRequireDefault(_util);
+
+var _Const = require('./Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+var _TableRow = require('./TableRow');
+
+var _TableRow2 = _interopRequireDefault(_TableRow);
+
+var _TableColumn = require('./TableColumn');
+
+var _TableColumn2 = _interopRequireDefault(_TableColumn);
+
+var _TableEditColumn = require('./TableEditColumn');
+
+var _TableEditColumn2 = _interopRequireDefault(_TableEditColumn);
+
+var _classnames = require('classnames');
+
+var _classnames2 = _interopRequireDefault(_classnames);
+
+var _ExpandComponent = require('./ExpandComponent');
+
+var _ExpandComponent2 = _interopRequireDefault(_ExpandComponent);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var TableBody = function (_Component) {
+ _inherits(TableBody, _Component);
+
+ function TableBody(props) {
+ _classCallCheck(this, TableBody);
+
+ var _this = _possibleConstructorReturn(this, (TableBody.__proto__ || Object.getPrototypeOf(TableBody)).call(this, props));
+
+ _this.handleCellKeyDown = function () {
+ return _this.__handleCellKeyDown__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleRowMouseOut = function () {
+ return _this.__handleRowMouseOut__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleRowMouseOver = function () {
+ return _this.__handleRowMouseOver__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleRowClick = function () {
+ return _this.__handleRowClick__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleRowDoubleClick = function () {
+ return _this.__handleRowDoubleClick__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleSelectRow = function () {
+ return _this.__handleSelectRow__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleSelectRowColumChange = function () {
+ return _this.__handleSelectRowColumChange__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleClickCell = function () {
+ return _this.__handleClickCell__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleEditCell = function () {
+ return _this.__handleEditCell__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.nextEditableCell = function () {
+ return _this.__nextEditableCell__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleCompleteEditCell = function () {
+ return _this.__handleCompleteEditCell__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.cancelEditCell = function () {
+ return _this.__cancelEditCell__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleClickonSelectColumn = function () {
+ return _this.__handleClickonSelectColumn__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.getHeaderColGrouop = function () {
+ return _this.__getHeaderColGrouop__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.state = {
+ currEditCell: null
+ };
+ return _this;
+ }
+
+ _createClass(TableBody, [{
+ key: '__getHeaderColGrouop__REACT_HOT_LOADER__',
+ value: function __getHeaderColGrouop__REACT_HOT_LOADER__() {
+ return this.__getHeaderColGrouop__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleClickonSelectColumn__REACT_HOT_LOADER__',
+ value: function __handleClickonSelectColumn__REACT_HOT_LOADER__() {
+ return this.__handleClickonSelectColumn__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__cancelEditCell__REACT_HOT_LOADER__',
+ value: function __cancelEditCell__REACT_HOT_LOADER__() {
+ return this.__cancelEditCell__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleCompleteEditCell__REACT_HOT_LOADER__',
+ value: function __handleCompleteEditCell__REACT_HOT_LOADER__() {
+ return this.__handleCompleteEditCell__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__nextEditableCell__REACT_HOT_LOADER__',
+ value: function __nextEditableCell__REACT_HOT_LOADER__() {
+ return this.__nextEditableCell__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleEditCell__REACT_HOT_LOADER__',
+ value: function __handleEditCell__REACT_HOT_LOADER__() {
+ return this.__handleEditCell__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleClickCell__REACT_HOT_LOADER__',
+ value: function __handleClickCell__REACT_HOT_LOADER__() {
+ return this.__handleClickCell__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleSelectRowColumChange__REACT_HOT_LOADER__',
+ value: function __handleSelectRowColumChange__REACT_HOT_LOADER__() {
+ return this.__handleSelectRowColumChange__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleSelectRow__REACT_HOT_LOADER__',
+ value: function __handleSelectRow__REACT_HOT_LOADER__() {
+ return this.__handleSelectRow__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleRowDoubleClick__REACT_HOT_LOADER__',
+ value: function __handleRowDoubleClick__REACT_HOT_LOADER__() {
+ return this.__handleRowDoubleClick__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleRowClick__REACT_HOT_LOADER__',
+ value: function __handleRowClick__REACT_HOT_LOADER__() {
+ return this.__handleRowClick__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleRowMouseOver__REACT_HOT_LOADER__',
+ value: function __handleRowMouseOver__REACT_HOT_LOADER__() {
+ return this.__handleRowMouseOver__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleRowMouseOut__REACT_HOT_LOADER__',
+ value: function __handleRowMouseOut__REACT_HOT_LOADER__() {
+ return this.__handleRowMouseOut__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleCellKeyDown__REACT_HOT_LOADER__',
+ value: function __handleCellKeyDown__REACT_HOT_LOADER__() {
+ return this.__handleCellKeyDown__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _this2 = this;
+
+ var _props = this.props,
+ cellEdit = _props.cellEdit,
+ beforeShowError = _props.beforeShowError,
+ x = _props.x,
+ y = _props.y,
+ keyBoardNav = _props.keyBoardNav,
+ trStyle = _props.trStyle,
+ version = _props.version;
+
+ var customTableClasses = {
+ 'table-striped': this.props.striped,
+ 'table-bordered': this.props.bordered,
+ 'table-hover': this.props.hover
+ };
+ if (this.props.condensed) {
+ if (_util2.default.isBootstrap4(version)) customTableClasses['table-sm'] = true;else customTableClasses['table-condensed'] = true;
+ }
+ var tableClasses = (0, _classnames2.default)('table', customTableClasses, this.props.tableBodyClass);
+
+ var noneditableRows = cellEdit.nonEditableRows && cellEdit.nonEditableRows() || [];
+ var unselectable = this.props.selectRow.unselectable || [];
+ var isSelectRowDefined = _util2.default.isSelectRowDefined(this.props.selectRow.mode);
+ var tableHeader = _util2.default.renderColGroup(this.props.columns, this.props.selectRow, this.props.expandColumnOptions, version);
+ var inputType = this.props.selectRow.mode === _Const2.default.ROW_SELECT_SINGLE ? 'radio' : 'checkbox';
+ var CustomComponent = this.props.selectRow.customComponent;
+ var enableKeyBoardNav = keyBoardNav === true || (typeof keyBoardNav === 'undefined' ? 'undefined' : _typeof(keyBoardNav)) === 'object';
+ var customEditAndNavStyle = (typeof keyBoardNav === 'undefined' ? 'undefined' : _typeof(keyBoardNav)) === 'object' ? keyBoardNav.customStyleOnEditCell : null;
+ var customNavStyle = (typeof keyBoardNav === 'undefined' ? 'undefined' : _typeof(keyBoardNav)) === 'object' ? keyBoardNav.customStyle : null;
+ var ExpandColumnCustomComponent = this.props.expandColumnOptions.expandColumnComponent;
+ var expandColSpan = this.props.columns.filter(function (col) {
+ return col && !col.hidden;
+ }).length;
+ if (isSelectRowDefined && !this.props.selectRow.hideSelectColumn) {
+ expandColSpan += 1;
+ }
+ var tabIndex = 1;
+ if (this.props.expandColumnOptions.expandColumnVisible) {
+ expandColSpan += 1;
+ }
+
+ var tableRows = this.props.data.map(function (data, r) {
+ var tableColumns = this.props.columns.filter(function (_) {
+ return _ != null;
+ }).map(function (column, i) {
+ var fieldValue = data[column.name];
+ var isFocusCell = r === y && i === x;
+ if (column.name !== this.props.keyField && // Key field can't be edit
+ column.editable && // column is editable? default is true, user can set it false
+ column.editable.readOnly !== true && this.state.currEditCell !== null && this.state.currEditCell.rid === r && this.state.currEditCell.cid === i && noneditableRows.indexOf(data[this.props.keyField]) === -1) {
+ var editable = column.editable;
+ var format = column.format ? function (value) {
+ return column.format(value, data, column.formatExtraData, r).replace(/<.*?>/g, '');
+ } : false;
+ if (_util2.default.isFunction(column.editable)) {
+ editable = column.editable(fieldValue, data, r, i);
+ }
+
+ return _react2.default.createElement(_TableEditColumn2.default, {
+ completeEdit: this.handleCompleteEditCell
+ // add by bluespring for column editor customize
+ , editable: editable,
+ attrs: column.editAttrs,
+ customEditor: column.customEditor,
+ format: column.format ? format : false,
+ key: i,
+ blurToSave: cellEdit.blurToSave,
+ blurToEscape: cellEdit.blurToEscape,
+ onTab: this.handleEditCell,
+ rowIndex: r,
+ colIndex: i,
+ row: data,
+ fieldValue: fieldValue,
+ className: column.editClassName,
+ invalidColumnClassName: column.invalidEditColumnClassName,
+ beforeShowError: beforeShowError,
+ isFocus: isFocusCell,
+ customStyleWithNav: customEditAndNavStyle });
+ } else {
+ // add by bluespring for className customize
+ var formattedValue = void 0;
+ var columnChild = fieldValue && fieldValue.toString();
+ var columnTitle = null;
+ var tdClassName = column.className;
+ var tdStyles = column.style;
+ if (_util2.default.isFunction(column.className)) {
+ tdClassName = column.className(fieldValue, data, r, i);
+ }
+
+ if (_util2.default.isFunction(column.style)) {
+ tdStyles = column.style(fieldValue, data, r, i);
+ }
+
+ if (typeof column.format !== 'undefined') {
+ formattedValue = column.format(fieldValue, data, column.formatExtraData, r);
+ if (!_react2.default.isValidElement(formattedValue)) {
+ columnChild = _react2.default.createElement('div', { dangerouslySetInnerHTML: { __html: formattedValue } });
+ } else {
+ columnChild = formattedValue;
+ }
+ }
+ if (_util2.default.isFunction(column.columnTitle)) {
+ columnTitle = column.columnTitle(fieldValue, data, r, i);
+ } else if (typeof column.columnTitle === 'string') {
+ columnTitle = column.columnTitle;
+ } else if (column.columnTitle) {
+ if (formattedValue) columnTitle = formattedValue.toString();else if (fieldValue) columnTitle = fieldValue.toString();
+ }
+ return _react2.default.createElement(
+ _TableColumn2.default,
+ { key: i,
+ cIndex: i,
+ rIndex: r,
+ dataAlign: column.align,
+ className: tdClassName,
+ columnTitle: columnTitle,
+ cellEdit: cellEdit,
+ hidden: column.hidden,
+ onEdit: this.handleEditCell,
+ width: column.width,
+ onClick: this.handleClickCell,
+ attrs: column.attrs,
+ style: tdStyles,
+ tabIndex: tabIndex++ + '',
+ isFocus: isFocusCell,
+ keyBoardNav: enableKeyBoardNav,
+ onKeyDown: this.handleCellKeyDown,
+ customNavStyle: customNavStyle,
+ row: data,
+ withoutTabIndex: this.props.withoutTabIndex },
+ columnChild
+ );
+ }
+ }, this);
+ var key = data[this.props.keyField];
+ var disable = unselectable.indexOf(key) !== -1;
+ var selected = this.props.selectedRowKeys.indexOf(key) !== -1;
+ var selectRowColumn = isSelectRowDefined && !this.props.selectRow.hideSelectColumn ? this.renderSelectRowColumn(selected, inputType, disable, CustomComponent, r, data) : null;
+ var expandedRowColumn = this.renderExpandRowColumn(this.props.expandableRow && this.props.expandableRow(data), this.props.expanding.indexOf(key) > -1, ExpandColumnCustomComponent, r);
+ var haveExpandContent = this.props.expandableRow && this.props.expandableRow(data);
+ var isExpanding = haveExpandContent && this.props.expanding.indexOf(key) > -1;
+ var hideRowOnExpand = this.props.hideRowOnExpand;
+ // add by bluespring for className customize
+
+ var trClassName = this.props.trClassName;
+ if (_util2.default.isFunction(this.props.trClassName)) {
+ trClassName = this.props.trClassName(data, r);
+ }
+ if (isExpanding && this.props.expandParentClass) {
+ trClassName += _util2.default.isFunction(this.props.expandParentClass) ? ' ' + this.props.expandParentClass(data, r) : ' ' + this.props.expandParentClass;
+ }
+ var result = [_react2.default.createElement(
+ _TableRow2.default,
+ { isSelected: selected, key: key, className: trClassName,
+ index: r,
+ row: data,
+ selectRow: isSelectRowDefined ? this.props.selectRow : undefined,
+ enableCellEdit: cellEdit.mode !== _Const2.default.CELL_EDIT_NONE,
+ onRowClick: this.handleRowClick,
+ onRowDoubleClick: this.handleRowDoubleClick,
+ onRowMouseOver: this.handleRowMouseOver,
+ onRowMouseOut: this.handleRowMouseOut,
+ onSelectRow: this.handleSelectRow,
+ onExpandRow: this.handleClickCell,
+ unselectableRow: disable,
+ style: trStyle,
+ hidden: isExpanding && hideRowOnExpand,
+ dbClickToEdit: cellEdit.mode === _Const2.default.CELL_EDIT_DBCLICK },
+ this.props.expandColumnOptions.expandColumnVisible && this.props.expandColumnOptions.expandColumnBeforeSelectColumn && expandedRowColumn,
+ selectRowColumn,
+ this.props.expandColumnOptions.expandColumnVisible && !this.props.expandColumnOptions.expandColumnBeforeSelectColumn && expandedRowColumn,
+ tableColumns
+ )];
+
+ if (haveExpandContent) {
+ var expandBodyClass = _util2.default.isFunction(this.props.expandBodyClass) ? this.props.expandBodyClass(data, r, isExpanding) : this.props.expandBodyClass;
+ result.push(_react2.default.createElement(
+ _ExpandComponent2.default,
+ {
+ key: key + '-expand',
+ row: data,
+ className: expandBodyClass,
+ bgColor: this.props.expandRowBgColor || this.props.selectRow.bgColor || undefined,
+ hidden: !isExpanding,
+ colSpan: expandColSpan,
+ width: "100%" },
+ this.props.expandComponent(data)
+ ));
+ }
+ return result;
+ }, this);
+
+ if (tableRows.length === 0 && !this.props.withoutNoDataText) {
+ var colSpan = this.props.columns.filter(function (c) {
+ return !c.hidden;
+ }).length + (isSelectRowDefined && !this.props.selectRow.hideSelectColumn ? 1 : 0) + (this.props.expandColumnOptions.expandColumnVisible ? 1 : 0);
+ tableRows = [_react2.default.createElement(
+ _TableRow2.default,
+ { key: '##table-empty##', style: trStyle },
+ _react2.default.createElement(
+ 'td',
+ { 'data-toggle': 'collapse',
+ colSpan: colSpan,
+ className: 'react-bs-table-no-data' },
+ this.props.noDataText || _Const2.default.NO_DATA_TEXT
+ )
+ )];
+ }
+
+ return _react2.default.createElement(
+ 'div',
+ {
+ ref: function ref(node) {
+ return _this2.container = node;
+ },
+ className: (0, _classnames2.default)('react-bs-container-body', this.props.bodyContainerClass),
+ style: this.props.style },
+ _react2.default.createElement(
+ 'table',
+ { className: tableClasses },
+ _react2.default.cloneElement(tableHeader, { ref: function ref(node) {
+ return _this2.header = node;
+ } }),
+ _react2.default.createElement(
+ 'tbody',
+ { ref: function ref(node) {
+ return _this2.tbody = node;
+ } },
+ tableRows
+ )
+ )
+ );
+ }
+ }, {
+ key: '__handleCellKeyDown__REACT_HOT_LOADER__',
+ value: function __handleCellKeyDown__REACT_HOT_LOADER__(e, lastEditCell) {
+ e.preventDefault();
+ var _props2 = this.props,
+ keyBoardNav = _props2.keyBoardNav,
+ onNavigateCell = _props2.onNavigateCell,
+ cellEdit = _props2.cellEdit,
+ selectedRowKeys = _props2.selectedRowKeys;
+
+ var offset = void 0;
+ if (e.keyCode === 37) {
+ offset = { x: -1, y: 0 };
+ } else if (e.keyCode === 38) {
+ offset = { x: 0, y: -1 };
+ } else if (e.keyCode === 39 || e.keyCode === 9) {
+ offset = { x: 1, y: 0 };
+ if (e.keyCode === 9 && lastEditCell) {
+ offset = _extends({}, offset, {
+ lastEditCell: lastEditCell
+ });
+ }
+ } else if (e.keyCode === 40) {
+ offset = { x: 0, y: 1 };
+ } else if (e.keyCode === 13) {
+ var rowIndex = e.target.parentElement.rowIndex + 1;
+ var enterToEdit = (typeof keyBoardNav === 'undefined' ? 'undefined' : _typeof(keyBoardNav)) === 'object' ? keyBoardNav.enterToEdit : false;
+ var enterToExpand = (typeof keyBoardNav === 'undefined' ? 'undefined' : _typeof(keyBoardNav)) === 'object' ? keyBoardNav.enterToExpand : false;
+ var enterToSelect = (typeof keyBoardNav === 'undefined' ? 'undefined' : _typeof(keyBoardNav)) === 'object' ? keyBoardNav.enterToSelect : false;
+
+ if (cellEdit && enterToEdit) {
+ this.handleEditCell(rowIndex, e.currentTarget.cellIndex, '', e);
+ }
+
+ if (enterToExpand) {
+ this.handleClickCell(e, this.props.y + 1, this.props.x);
+ }
+
+ if (enterToSelect) {
+ var isSelected = selectedRowKeys.indexOf(this.props.data[rowIndex - 1][this.props.keyField]) !== -1;
+ this.handleSelectRow(rowIndex, !isSelected, e);
+ }
+ }
+ if (offset && keyBoardNav) {
+ onNavigateCell(offset);
+ }
+ }
+ }, {
+ key: '__handleRowMouseOut__REACT_HOT_LOADER__',
+ value: function __handleRowMouseOut__REACT_HOT_LOADER__(rowIndex, event) {
+ var targetRow = this.props.data[rowIndex];
+ this.props.onRowMouseOut(targetRow, event);
+ }
+ }, {
+ key: '__handleRowMouseOver__REACT_HOT_LOADER__',
+ value: function __handleRowMouseOver__REACT_HOT_LOADER__(rowIndex, event) {
+ var targetRow = this.props.data[rowIndex];
+ this.props.onRowMouseOver(targetRow, event);
+ }
+ }, {
+ key: '__handleRowClick__REACT_HOT_LOADER__',
+ value: function __handleRowClick__REACT_HOT_LOADER__(rowIndex, cellIndex, event) {
+ var _props3 = this.props,
+ onRowClick = _props3.onRowClick,
+ selectRow = _props3.selectRow;
+
+ if (_util2.default.isSelectRowDefined(selectRow.mode)) cellIndex--;
+ if (this._isExpandColumnVisible()) cellIndex--;
+ onRowClick(this.props.data[rowIndex - 1], rowIndex - 1, cellIndex, event);
+ }
+ }, {
+ key: '__handleRowDoubleClick__REACT_HOT_LOADER__',
+ value: function __handleRowDoubleClick__REACT_HOT_LOADER__(rowIndex, event) {
+ var onRowDoubleClick = this.props.onRowDoubleClick;
+
+ var targetRow = this.props.data[rowIndex];
+ onRowDoubleClick(targetRow, event);
+ }
+ }, {
+ key: '__handleSelectRow__REACT_HOT_LOADER__',
+ value: function __handleSelectRow__REACT_HOT_LOADER__(rowIndex, isSelected, e) {
+ var selectedRow = void 0;
+ var _props4 = this.props,
+ data = _props4.data,
+ onSelectRow = _props4.onSelectRow;
+
+ data.forEach(function (row, i) {
+ if (i === rowIndex - 1) {
+ selectedRow = row;
+ return false;
+ }
+ });
+ onSelectRow(selectedRow, isSelected, e, rowIndex - 1);
+ }
+ }, {
+ key: '__handleSelectRowColumChange__REACT_HOT_LOADER__',
+ value: function __handleSelectRowColumChange__REACT_HOT_LOADER__(e, rowIndex) {
+ if (!this.props.selectRow.clickToSelect || !this.props.selectRow.clickToSelectAndEditCell) {
+ this.handleSelectRow(rowIndex + 1, e.currentTarget.checked, e);
+ }
+ }
+ }, {
+ key: '__handleClickCell__REACT_HOT_LOADER__',
+ value: function __handleClickCell__REACT_HOT_LOADER__(event, rowIndex) {
+ var columnIndex = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : -1;
+ var _props5 = this.props,
+ columns = _props5.columns,
+ keyField = _props5.keyField,
+ expandBy = _props5.expandBy,
+ expandableRow = _props5.expandableRow,
+ _props5$selectRow = _props5.selectRow,
+ mode = _props5$selectRow.mode,
+ clickToExpand = _props5$selectRow.clickToExpand,
+ hideSelectColumn = _props5$selectRow.hideSelectColumn,
+ onlyOneExpanding = _props5.onlyOneExpanding;
+
+ var isSelectRowDefined = _util2.default.isSelectRowDefined(mode);
+ var selectRowAndExpand = isSelectRowDefined && !clickToExpand ? false : true;
+ columnIndex = isSelectRowDefined && !hideSelectColumn ? columnIndex - 1 : columnIndex;
+ columnIndex = this._isExpandColumnVisible() ? columnIndex - 1 : columnIndex;
+ if (expandableRow && selectRowAndExpand && (expandBy === _Const2.default.EXPAND_BY_ROW ||
+ /* Below will allow expanding trigger by clicking on selection column
+ if configure as expanding by column */
+ expandBy === _Const2.default.EXPAND_BY_COL && columnIndex < 0 || expandBy === _Const2.default.EXPAND_BY_COL && columns[columnIndex].expandable)) {
+ var expanding = this.props.expanding;
+ var rowKey = this.props.data[rowIndex - 1][keyField];
+ var isRowExpanding = expanding.indexOf(rowKey) > -1;
+
+ if (isRowExpanding) {
+ // collapse
+ expanding = expanding.filter(function (k) {
+ return k !== rowKey;
+ });
+ } else {
+ // expand
+ if (onlyOneExpanding) expanding = [rowKey];else expanding.push(rowKey);
+ }
+ this.props.onExpand(expanding, rowKey, isRowExpanding, event);
+ }
+ }
+ }, {
+ key: '__handleEditCell__REACT_HOT_LOADER__',
+ value: function __handleEditCell__REACT_HOT_LOADER__(rowIndex, columnIndex, action, e) {
+ var selectRow = this.props.selectRow;
+
+ var defineSelectRow = _util2.default.isSelectRowDefined(selectRow.mode);
+ var expandColumnVisible = this._isExpandColumnVisible();
+ if (defineSelectRow) {
+ columnIndex--;
+ if (selectRow.hideSelectColumn) columnIndex++;
+ }
+ if (expandColumnVisible) {
+ columnIndex--;
+ }
+ rowIndex--;
+
+ if (action === 'tab') {
+ if (defineSelectRow && !selectRow.hideSelectColumn) columnIndex++;
+ if (expandColumnVisible) columnIndex++;
+ this.handleCompleteEditCell(e.target.value, rowIndex, columnIndex - 1);
+ if (columnIndex >= this.props.columns.length) {
+ this.handleCellKeyDown(e, true);
+ } else {
+ this.handleCellKeyDown(e);
+ }
+
+ var _nextEditableCell = this.nextEditableCell(rowIndex, columnIndex),
+ nextRIndex = _nextEditableCell.nextRIndex,
+ nextCIndex = _nextEditableCell.nextCIndex;
+
+ rowIndex = nextRIndex;
+ columnIndex = nextCIndex;
+ }
+
+ var stateObj = {
+ currEditCell: {
+ rid: rowIndex,
+ cid: columnIndex
+ }
+ };
+
+ if (this.props.selectRow.clickToSelectAndEditCell && this.props.cellEdit.mode !== _Const2.default.CELL_EDIT_DBCLICK) {
+ var selected = this.props.selectedRowKeys.indexOf(this.props.data[rowIndex][this.props.keyField]) !== -1;
+ this.handleSelectRow(rowIndex + 1, !selected, e);
+ }
+ this.setState(function () {
+ return stateObj;
+ });
+ }
+ }, {
+ key: '__nextEditableCell__REACT_HOT_LOADER__',
+ value: function __nextEditableCell__REACT_HOT_LOADER__(rIndex, cIndex) {
+ var keyField = this.props.keyField;
+
+ var nextRIndex = rIndex;
+ var nextCIndex = cIndex;
+ var row = void 0;
+ var column = void 0;
+ do {
+ if (nextCIndex >= this.props.columns.length) {
+ nextRIndex++;
+ nextCIndex = 0;
+ }
+ row = this.props.data[nextRIndex];
+ column = this.props.columns[nextCIndex];
+ if (!row) break;
+ var editable = column.editable;
+ if (_util2.default.isFunction(column.editable)) {
+ editable = column.editable(column, row, nextRIndex, nextCIndex);
+ }
+ if (editable && editable.readOnly !== true && !column.hidden && keyField !== column.name) {
+ break;
+ } else {
+ nextCIndex++;
+ }
+ } while (row);
+ return { nextRIndex: nextRIndex, nextCIndex: nextCIndex };
+ }
+ }, {
+ key: '__handleCompleteEditCell__REACT_HOT_LOADER__',
+ value: function __handleCompleteEditCell__REACT_HOT_LOADER__(newVal, rowIndex, columnIndex) {
+ if (newVal !== null) {
+ var result = this.props.onEditCell(newVal, rowIndex, columnIndex);
+ if (result !== _Const2.default.AWAIT_BEFORE_CELL_EDIT) {
+ this.setState(function () {
+ return { currEditCell: null };
+ });
+ }
+ } else {
+ this.setState(function () {
+ return { currEditCell: null };
+ });
+ }
+ }
+ }, {
+ key: '__cancelEditCell__REACT_HOT_LOADER__',
+ value: function __cancelEditCell__REACT_HOT_LOADER__() {
+ this.setState(function () {
+ return { currEditCell: null };
+ });
+ }
+ }, {
+ key: '__handleClickonSelectColumn__REACT_HOT_LOADER__',
+ value: function __handleClickonSelectColumn__REACT_HOT_LOADER__(e, isSelect, rowIndex, row) {
+ e.stopPropagation();
+ if (e.target.tagName === 'TD' && (this.props.selectRow.clickToSelect || this.props.selectRow.clickToSelectAndEditCell)) {
+ var unselectable = this.props.selectRow.unselectable || [];
+ if (unselectable.indexOf(row[this.props.keyField]) === -1) {
+ this.handleSelectRow(rowIndex + 1, isSelect, e);
+ this.handleClickCell(e, rowIndex + 1);
+ }
+ }
+ }
+ }, {
+ key: 'renderSelectRowColumn',
+ value: function renderSelectRowColumn(selected, inputType, disabled) {
+ var CustomComponent = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
+
+ var _this3 = this;
+
+ var rowIndex = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;
+ var row = arguments[5];
+
+ return _react2.default.createElement(
+ 'td',
+ { onClick: function onClick(e) {
+ _this3.handleClickonSelectColumn(e, !selected, rowIndex, row);
+ }, style: { textAlign: 'center' } },
+ CustomComponent ? _react2.default.createElement(CustomComponent, { type: inputType, checked: selected, disabled: disabled,
+ rowIndex: rowIndex,
+ onChange: function onChange(e) {
+ return _this3.handleSelectRowColumChange(e, rowIndex);
+ } }) : _react2.default.createElement('input', { type: inputType, checked: selected, disabled: disabled,
+ onChange: function onChange(e) {
+ return _this3.handleSelectRowColumChange(e, rowIndex);
+ } })
+ );
+ }
+ }, {
+ key: 'renderExpandRowColumn',
+ value: function renderExpandRowColumn(isExpandableRow, isExpanded, CustomComponent) {
+ var _this4 = this;
+
+ var rowIndex = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
+
+ var content = null;
+ if (CustomComponent) {
+ content = _react2.default.createElement(CustomComponent, { isExpandableRow: isExpandableRow, isExpanded: isExpanded });
+ } else if (isExpandableRow) {
+ content = isExpanded ? _react2.default.createElement('span', { className: 'fa fa-minus glyphicon glyphicon-minus' }) : _react2.default.createElement('span', { className: 'fa fa-plus glyphicon glyphicon-plus' });
+ } else {
+ content = ' ';
+ }
+
+ return _react2.default.createElement(
+ 'td',
+ {
+ className: 'react-bs-table-expand-cell',
+ onClick: function onClick(e) {
+ return _this4.handleClickCell(e, rowIndex + 1);
+ } },
+ content
+ );
+ }
+ }, {
+ key: '_isExpandColumnVisible',
+ value: function _isExpandColumnVisible() {
+ return this.props.expandColumnOptions.expandColumnVisible;
+ }
+ }, {
+ key: '__getHeaderColGrouop__REACT_HOT_LOADER__',
+ value: function __getHeaderColGrouop__REACT_HOT_LOADER__() {
+ return this.header.childNodes;
+ }
+ }]);
+
+ return TableBody;
+}(_react.Component);
+
+TableBody.propTypes = {
+ version: _propTypes2.default.string,
+ data: _propTypes2.default.array,
+ columns: _propTypes2.default.array,
+ striped: _propTypes2.default.bool,
+ bordered: _propTypes2.default.bool,
+ hover: _propTypes2.default.bool,
+ condensed: _propTypes2.default.bool,
+ keyField: _propTypes2.default.string,
+ selectedRowKeys: _propTypes2.default.array,
+ onRowClick: _propTypes2.default.func,
+ onRowDoubleClick: _propTypes2.default.func,
+ onSelectRow: _propTypes2.default.func,
+ noDataText: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),
+ withoutNoDataText: _propTypes2.default.bool,
+ style: _propTypes2.default.object,
+ tableBodyClass: _propTypes2.default.string,
+ bodyContainerClass: _propTypes2.default.string,
+ expandableRow: _propTypes2.default.func,
+ expandComponent: _propTypes2.default.func,
+ expandRowBgColor: _propTypes2.default.string,
+ expandBy: _propTypes2.default.string,
+ expanding: _propTypes2.default.array,
+ onExpand: _propTypes2.default.func,
+ expandBodyClass: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.func]),
+ expandParentClass: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.func]),
+ onlyOneExpanding: _propTypes2.default.bool,
+ beforeShowError: _propTypes2.default.func,
+ keyBoardNav: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.object]),
+ x: _propTypes2.default.number,
+ y: _propTypes2.default.number,
+ onNavigateCell: _propTypes2.default.func,
+ withoutTabIndex: _propTypes2.default.bool,
+ hideRowOnExpand: _propTypes2.default.bool
+};
+var _default = TableBody;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(TableBody, 'TableBody', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableBody.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableBody.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/TableColumn.js b/lib/TableColumn.js
new file mode 100644
index 000000000..3b9e72c1d
--- /dev/null
+++ b/lib/TableColumn.js
@@ -0,0 +1,275 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _reactDom = require('react-dom');
+
+var _reactDom2 = _interopRequireDefault(_reactDom);
+
+var _Const = require('./Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+var _util = require('./util');
+
+var _util2 = _interopRequireDefault(_util);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var TableColumn = function (_Component) {
+ _inherits(TableColumn, _Component);
+
+ function TableColumn(props) {
+ _classCallCheck(this, TableColumn);
+
+ var _this = _possibleConstructorReturn(this, (TableColumn.__proto__ || Object.getPrototypeOf(TableColumn)).call(this, props));
+
+ _this.handleCellEdit = function () {
+ return _this.__handleCellEdit__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleCellClick = function () {
+ return _this.__handleCellClick__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleKeyDown = function () {
+ return _this.__handleKeyDown__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ return _this;
+ }
+ /* eslint no-unused-vars: [0, { "args": "after-used" }] */
+
+
+ _createClass(TableColumn, [{
+ key: '__handleKeyDown__REACT_HOT_LOADER__',
+ value: function __handleKeyDown__REACT_HOT_LOADER__() {
+ return this.__handleKeyDown__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleCellClick__REACT_HOT_LOADER__',
+ value: function __handleCellClick__REACT_HOT_LOADER__() {
+ return this.__handleCellClick__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleCellEdit__REACT_HOT_LOADER__',
+ value: function __handleCellEdit__REACT_HOT_LOADER__() {
+ return this.__handleCellEdit__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: 'shouldComponentUpdate',
+ value: function shouldComponentUpdate(nextProps, nextState) {
+ var children = this.props.children;
+
+ var shouldUpdated = this.props.width !== nextProps.width || this.props.className !== nextProps.className || this.props.hidden !== nextProps.hidden || this.props.dataAlign !== nextProps.dataAlign || this.props.isFocus !== nextProps.isFocus || (typeof children === 'undefined' ? 'undefined' : _typeof(children)) !== _typeof(nextProps.children) || ('' + this.props.onEdit).toString() !== ('' + nextProps.onEdit).toString();
+
+ if (shouldUpdated) {
+ return shouldUpdated;
+ }
+
+ if ((typeof children === 'undefined' ? 'undefined' : _typeof(children)) === 'object' && children !== null && children.props !== null) {
+ if (children.props.type === 'checkbox' || children.props.type === 'radio') {
+ shouldUpdated = shouldUpdated || children.props.type !== nextProps.children.props.type || children.props.checked !== nextProps.children.props.checked || children.props.disabled !== nextProps.children.props.disabled;
+ } else {
+ shouldUpdated = true;
+ }
+ } else {
+ shouldUpdated = shouldUpdated || children !== nextProps.children;
+ }
+
+ if (shouldUpdated) {
+ return shouldUpdated;
+ }
+
+ if (!(this.props.cellEdit && nextProps.cellEdit)) {
+ return false;
+ } else {
+ return shouldUpdated || this.props.cellEdit.mode !== nextProps.cellEdit.mode;
+ }
+ }
+ }, {
+ key: 'componentDidMount',
+ value: function componentDidMount() {
+ var dom = _reactDom2.default.findDOMNode(this);
+ if (this.props.isFocus && this.props.keyBoardNav) {
+ dom.focus();
+ } else {
+ dom.blur();
+ }
+ }
+ }, {
+ key: 'componentDidUpdate',
+ value: function componentDidUpdate() {
+ var dom = _reactDom2.default.findDOMNode(this);
+ if (this.props.isFocus && this.props.keyBoardNav) {
+ dom.focus();
+ } else {
+ dom.blur();
+ }
+ }
+ }, {
+ key: '__handleCellEdit__REACT_HOT_LOADER__',
+ value: function __handleCellEdit__REACT_HOT_LOADER__(e) {
+ try {
+ if (this.props.cellEdit.mode === _Const2.default.CELL_EDIT_DBCLICK) {
+ if (document.selection && document.selection.empty) {
+ document.selection.empty();
+ } else if (window.getSelection) {
+ var sel = window.getSelection();
+ sel.removeAllRanges();
+ }
+ }
+ } catch (err) {} /* eslint no-empty: 0 */
+ this.props.onEdit(this.props.rIndex + 1, e.currentTarget.cellIndex, e);
+ if (this.props.cellEdit.mode !== _Const2.default.CELL_EDIT_DBCLICK) {
+ this.props.onClick(e, this.props.rIndex + 1, e.currentTarget.cellIndex);
+ }
+ }
+ }, {
+ key: '__handleCellClick__REACT_HOT_LOADER__',
+ value: function __handleCellClick__REACT_HOT_LOADER__(e) {
+ var _props = this.props,
+ onClick = _props.onClick,
+ rIndex = _props.rIndex;
+
+ if (onClick) {
+ onClick(e, rIndex + 1, e.currentTarget.cellIndex);
+ }
+ }
+ }, {
+ key: '__handleKeyDown__REACT_HOT_LOADER__',
+ value: function __handleKeyDown__REACT_HOT_LOADER__(e) {
+ if (this.props.keyBoardNav) {
+ this.props.onKeyDown(e);
+ }
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _props2 = this.props,
+ children = _props2.children,
+ columnTitle = _props2.columnTitle,
+ dataAlign = _props2.dataAlign,
+ hidden = _props2.hidden,
+ cellEdit = _props2.cellEdit,
+ attrs = _props2.attrs,
+ style = _props2.style,
+ isFocus = _props2.isFocus,
+ keyBoardNav = _props2.keyBoardNav,
+ tabIndex = _props2.tabIndex,
+ customNavStyle = _props2.customNavStyle,
+ withoutTabIndex = _props2.withoutTabIndex,
+ row = _props2.row;
+ var className = this.props.className;
+
+
+ var tdStyle = _extends({
+ textAlign: dataAlign,
+ display: hidden ? 'none' : null
+ }, style);
+
+ var opts = {};
+
+ if (cellEdit) {
+ if (cellEdit.mode === _Const2.default.CELL_EDIT_CLICK) {
+ opts.onClick = this.handleCellEdit;
+ } else if (cellEdit.mode === _Const2.default.CELL_EDIT_DBCLICK) {
+ opts.onDoubleClick = this.handleCellEdit;
+ } else {
+ opts.onClick = this.handleCellClick;
+ }
+ }
+
+ if (keyBoardNav && isFocus) {
+ opts.onKeyDown = this.handleKeyDown;
+ }
+
+ if (isFocus) {
+ if (customNavStyle) {
+ var cusmtStyle = _util2.default.isFunction(customNavStyle) ? customNavStyle(children, row) : customNavStyle;
+ tdStyle = _extends({}, tdStyle, cusmtStyle);
+ } else {
+ className = className + ' default-focus-cell';
+ }
+ }
+
+ var attr = {};
+ if (!withoutTabIndex) attr.tabIndex = tabIndex;
+ return _react2.default.createElement(
+ 'td',
+ _extends({}, attr, { style: tdStyle,
+ title: columnTitle,
+ className: className
+ }, opts, attrs),
+ typeof children === 'boolean' ? children.toString() : children
+ );
+ }
+ }]);
+
+ return TableColumn;
+}(_react.Component);
+
+TableColumn.propTypes = {
+ rIndex: _propTypes2.default.number,
+ dataAlign: _propTypes2.default.string,
+ hidden: _propTypes2.default.bool,
+ className: _propTypes2.default.string,
+ columnTitle: _propTypes2.default.string,
+ children: _propTypes2.default.node,
+ onClick: _propTypes2.default.func,
+ attrs: _propTypes2.default.object,
+ style: _propTypes2.default.object,
+ isFocus: _propTypes2.default.bool,
+ onKeyDown: _propTypes2.default.func,
+ tabIndex: _propTypes2.default.string,
+ withoutTabIndex: _propTypes2.default.bool,
+ keyBoardNav: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.object]),
+ customNavStyle: _propTypes2.default.oneOfType([_propTypes2.default.func, _propTypes2.default.object]),
+ row: _propTypes2.default.any /* only used on custom styling for navigation */
+};
+
+TableColumn.defaultProps = {
+ dataAlign: 'left',
+ withoutTabIndex: false,
+ hidden: false,
+ className: '',
+ isFocus: false,
+ keyBoardNav: false
+};
+var _default = TableColumn;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(TableColumn, 'TableColumn', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableColumn.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableColumn.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/TableEditColumn.js b/lib/TableEditColumn.js
new file mode 100644
index 000000000..901904423
--- /dev/null
+++ b/lib/TableEditColumn.js
@@ -0,0 +1,450 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _reactDom = require('react-dom');
+
+var _reactDom2 = _interopRequireDefault(_reactDom);
+
+var _Editor = require('./Editor');
+
+var _Editor2 = _interopRequireDefault(_Editor);
+
+var _Notification = require('./Notification.js');
+
+var _classnames = require('classnames');
+
+var _classnames2 = _interopRequireDefault(_classnames);
+
+var _util = require('./util');
+
+var _util2 = _interopRequireDefault(_util);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var TableEditColumn = function (_Component) {
+ _inherits(TableEditColumn, _Component);
+
+ function TableEditColumn(props) {
+ _classCallCheck(this, TableEditColumn);
+
+ var _this = _possibleConstructorReturn(this, (TableEditColumn.__proto__ || Object.getPrototypeOf(TableEditColumn)).call(this, props));
+
+ _this.handleKeyPress = function () {
+ return _this.__handleKeyPress__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleBlur = function () {
+ return _this.__handleBlur__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleCustomUpdate = function () {
+ return _this.__handleCustomUpdate__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.notifyToastr = function () {
+ return _this.__notifyToastr__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleClick = function () {
+ return _this.__handleClick__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.getInputRef = function () {
+ return _this.__getInputRef__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.getHandleKeyPress = function () {
+ return _this.__getHandleKeyPress__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.getHandleBlur = function () {
+ return _this.__getHandleBlur__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.timeouteClear = 0;
+ var _this$props = _this.props,
+ fieldValue = _this$props.fieldValue,
+ row = _this$props.row,
+ className = _this$props.className;
+
+ _this.focusInEditor = _this.focusInEditor.bind(_this);
+ _this.state = {
+ shakeEditor: false,
+ className: _util2.default.isFunction(className) ? className(fieldValue, row) : className
+ };
+ return _this;
+ }
+
+ _createClass(TableEditColumn, [{
+ key: '__getHandleBlur__REACT_HOT_LOADER__',
+ value: function __getHandleBlur__REACT_HOT_LOADER__() {
+ return this.__getHandleBlur__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__getHandleKeyPress__REACT_HOT_LOADER__',
+ value: function __getHandleKeyPress__REACT_HOT_LOADER__() {
+ return this.__getHandleKeyPress__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__getInputRef__REACT_HOT_LOADER__',
+ value: function __getInputRef__REACT_HOT_LOADER__() {
+ return this.__getInputRef__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleClick__REACT_HOT_LOADER__',
+ value: function __handleClick__REACT_HOT_LOADER__() {
+ return this.__handleClick__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__notifyToastr__REACT_HOT_LOADER__',
+ value: function __notifyToastr__REACT_HOT_LOADER__() {
+ return this.__notifyToastr__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleCustomUpdate__REACT_HOT_LOADER__',
+ value: function __handleCustomUpdate__REACT_HOT_LOADER__() {
+ return this.__handleCustomUpdate__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleBlur__REACT_HOT_LOADER__',
+ value: function __handleBlur__REACT_HOT_LOADER__() {
+ return this.__handleBlur__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleKeyPress__REACT_HOT_LOADER__',
+ value: function __handleKeyPress__REACT_HOT_LOADER__() {
+ return this.__handleKeyPress__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: 'valueShortCircuit',
+ value: function valueShortCircuit(value) {
+ return value === null || typeof value === 'undefined' ? '' : value;
+ }
+ }, {
+ key: '__handleKeyPress__REACT_HOT_LOADER__',
+ value: function __handleKeyPress__REACT_HOT_LOADER__(e) {
+ if (e.keyCode === 13 || e.keyCode === 9) {
+ // Pressed ENTER or TAB
+ var value = e.currentTarget.type === 'checkbox' ? this._getCheckBoxValue(e) : e.currentTarget.value;
+
+ if (e.keyCode === 9 && this.props.blurToSave || !this.validator(value)) {
+ return;
+ }
+
+ if (e.keyCode === 13) {
+ this.props.completeEdit(value, this.props.rowIndex, this.props.colIndex);
+ } else {
+ this.props.onTab(this.props.rowIndex + 1, this.props.colIndex + 1, 'tab', e);
+ e.preventDefault();
+ }
+ } else if (e.keyCode === 27) {
+ this.props.completeEdit(null, this.props.rowIndex, this.props.colIndex);
+ } else if (e.type === 'click' && !this.props.blurToSave) {
+ // textarea click save button
+ var _value = e.target.parentElement.firstChild.value;
+ if (!this.validator(_value)) {
+ return;
+ }
+ this.props.completeEdit(_value, this.props.rowIndex, this.props.colIndex);
+ }
+ }
+ }, {
+ key: '__handleBlur__REACT_HOT_LOADER__',
+ value: function __handleBlur__REACT_HOT_LOADER__(e) {
+ e.stopPropagation();
+ if (this.props.blurToSave) {
+ var value = e.currentTarget.type === 'checkbox' ? this._getCheckBoxValue(e) : e.currentTarget.value;
+ if (!this.validator(value)) {
+ return false;
+ }
+ this.props.completeEdit(value, this.props.rowIndex, this.props.colIndex);
+ } else if (this.props.blurToEscape) {
+ this.props.completeEdit(null, this.props.rowIndex, this.props.colIndex);
+ }
+ }
+ }, {
+ key: '__handleCustomUpdate__REACT_HOT_LOADER__',
+
+
+ // modified by iuculanop
+ // BEGIN
+ value: function __handleCustomUpdate__REACT_HOT_LOADER__(value) {
+ if (!this.validator(value)) {
+ return;
+ }
+ this.props.completeEdit(value, this.props.rowIndex, this.props.colIndex);
+ }
+ }, {
+ key: 'validator',
+ value: function validator(value) {
+ var ts = this;
+ var valid = true;
+ if (ts.props.editable.validator) {
+ var checkVal = ts.props.editable.validator(value, this.props.row);
+ var responseType = typeof checkVal === 'undefined' ? 'undefined' : _typeof(checkVal);
+ if (responseType !== 'object' && checkVal !== true) {
+ valid = false;
+ this.notifyToastr('error', checkVal, '');
+ } else if (responseType === 'object' && checkVal.isValid !== true) {
+ valid = false;
+ this.notifyToastr(checkVal.notification.type, checkVal.notification.msg, checkVal.notification.title);
+ }
+ if (!valid) {
+ // animate input
+ ts.clearTimeout();
+ var _props = this.props,
+ invalidColumnClassName = _props.invalidColumnClassName,
+ row = _props.row;
+
+ var className = _util2.default.isFunction(invalidColumnClassName) ? invalidColumnClassName(value, row) : invalidColumnClassName;
+ ts.setState({ shakeEditor: true, className: className });
+ ts.timeouteClear = setTimeout(function () {
+ ts.setState({ shakeEditor: false });
+ }, 300);
+ this.focusInEditor();
+ return valid;
+ }
+ }
+ return valid;
+ }
+ // END
+
+ }, {
+ key: '__notifyToastr__REACT_HOT_LOADER__',
+ value: function __notifyToastr__REACT_HOT_LOADER__(type, message, title) {
+ var toastr = true;
+ var beforeShowError = this.props.beforeShowError;
+
+ if (beforeShowError) {
+ toastr = beforeShowError(type, message, title);
+ }
+ if (toastr) {
+ (0, _Notification.notice)(type, message, title);
+ }
+ }
+ }, {
+ key: 'clearTimeout',
+ value: function (_clearTimeout) {
+ function clearTimeout() {
+ return _clearTimeout.apply(this, arguments);
+ }
+
+ clearTimeout.toString = function () {
+ return _clearTimeout.toString();
+ };
+
+ return clearTimeout;
+ }(function () {
+ if (this.timeouteClear !== 0) {
+ clearTimeout(this.timeouteClear);
+ this.timeouteClear = 0;
+ }
+ })
+ }, {
+ key: 'componentDidMount',
+ value: function componentDidMount() {
+ this.focusInEditor();
+ var dom = _reactDom2.default.findDOMNode(this);
+ if (this.props.isFocus) {
+ dom.focus();
+ } else {
+ dom.blur();
+ }
+ }
+ }, {
+ key: 'componentDidUpdate',
+ value: function componentDidUpdate() {
+ var dom = _reactDom2.default.findDOMNode(this);
+ if (this.props.isFocus) {
+ dom.focus();
+ } else {
+ dom.blur();
+ }
+ }
+ }, {
+ key: 'componentWillUnmount',
+ value: function componentWillUnmount() {
+ this.clearTimeout();
+ }
+ }, {
+ key: 'focusInEditor',
+ value: function focusInEditor() {
+ if (this.inputRef && _util2.default.isFunction(this.inputRef.focus)) {
+ this.inputRef.focus();
+ }
+ }
+ }, {
+ key: '__handleClick__REACT_HOT_LOADER__',
+ value: function __handleClick__REACT_HOT_LOADER__(e) {
+ if (e.target.tagName !== 'TD') {
+ e.stopPropagation();
+ }
+ }
+ }, {
+ key: '__getInputRef__REACT_HOT_LOADER__',
+ value: function __getInputRef__REACT_HOT_LOADER__(userRef) {
+ var _this2 = this;
+
+ return function (ref) {
+ _this2.inputRef = ref;
+ if (_util2.default.isFunction(userRef)) {
+ userRef(ref);
+ } else if (typeof userRef === 'string') {
+ throw new Error('Ref must be a function');
+ }
+ };
+ }
+ }, {
+ key: '__getHandleKeyPress__REACT_HOT_LOADER__',
+ value: function __getHandleKeyPress__REACT_HOT_LOADER__(customHandler) {
+ var _this3 = this;
+
+ return function (e) {
+ _this3.handleKeyPress(e);
+ if (_util2.default.isFunction(customHandler)) {
+ customHandler(e);
+ }
+ };
+ }
+ }, {
+ key: '__getHandleBlur__REACT_HOT_LOADER__',
+ value: function __getHandleBlur__REACT_HOT_LOADER__(customHandler) {
+ var _this4 = this;
+
+ return function (e) {
+ _this4.handleBlur(e);
+ if (_util2.default.isFunction(customHandler)) {
+ customHandler(e);
+ }
+ };
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _props2 = this.props,
+ editable = _props2.editable,
+ format = _props2.format,
+ customEditor = _props2.customEditor,
+ isFocus = _props2.isFocus,
+ customStyleWithNav = _props2.customStyleWithNav,
+ row = _props2.row,
+ attrs = _props2.attrs;
+ var shakeEditor = this.state.shakeEditor;
+
+ var attr = _extends({}, editable.attrs, {
+ ref: this.getInputRef(editable.attrs && editable.attrs.ref),
+ onKeyDown: this.getHandleKeyPress(editable.attrs && editable.attrs.onKeyDown),
+ onBlur: this.getHandleBlur(editable.attrs && editable.attrs.onBlur)
+ });
+ var style = { position: 'relative' };
+ var fieldValue = this.props.fieldValue;
+ var className = this.state.className;
+
+
+ if (editable.placeholder) {
+ attr.placeholder = editable.placeholder;
+ /* eslint-disable no-console */
+ console.warn('Setting editable.placeholder is deprecated. Use editable.attrs to set input attributes');
+ /* eslint-enable no-console */
+ }
+
+ var editorClass = (0, _classnames2.default)({ 'animated': shakeEditor, 'shake': shakeEditor });
+ fieldValue = fieldValue === 0 ? '0' : fieldValue;
+ var cellEditor = void 0;
+ if (customEditor) {
+ var customEditorProps = _extends({
+ row: row
+ }, attr, {
+ defaultValue: this.valueShortCircuit(fieldValue)
+ }, customEditor.customEditorParameters);
+ cellEditor = customEditor.getElement(this.handleCustomUpdate, customEditorProps);
+ } else {
+ cellEditor = (0, _Editor2.default)(editable, attr, format, editorClass, this.valueShortCircuit(fieldValue), null, row);
+ }
+
+ if (isFocus) {
+ if (customStyleWithNav) {
+ var customStyle = _util2.default.isFunction(customStyleWithNav) ? customStyleWithNav(fieldValue, row) : customStyleWithNav;
+ style = _extends({}, style, customStyle);
+ } else {
+ className = className + ' default-focus-cell';
+ }
+ }
+
+ return _react2.default.createElement(
+ 'td',
+ _extends({}, attrs, {
+ style: style,
+ className: className,
+ onClick: this.handleClick }),
+ cellEditor
+ );
+ }
+ }, {
+ key: '_getCheckBoxValue',
+ value: function _getCheckBoxValue(e) {
+ var value = '';
+ var values = e.currentTarget.value.split(':');
+ value = e.currentTarget.checked ? values[0] : values[1];
+ return value;
+ }
+ }]);
+
+ return TableEditColumn;
+}(_react.Component);
+
+TableEditColumn.propTypes = {
+ completeEdit: _propTypes2.default.func,
+ rowIndex: _propTypes2.default.number,
+ colIndex: _propTypes2.default.number,
+ blurToSave: _propTypes2.default.bool,
+ blurToEscape: _propTypes2.default.bool,
+ editable: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.object]),
+ format: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.func]),
+ row: _propTypes2.default.any,
+ fieldValue: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.bool, _propTypes2.default.number, _propTypes2.default.array, _propTypes2.default.object]),
+ className: _propTypes2.default.any,
+ beforeShowError: _propTypes2.default.func,
+ isFocus: _propTypes2.default.bool,
+ attrs: _propTypes2.default.object,
+ customStyleWithNav: _propTypes2.default.oneOfType([_propTypes2.default.func, _propTypes2.default.object])
+};
+
+var _default = TableEditColumn;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(TableEditColumn, 'TableEditColumn', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableEditColumn.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableEditColumn.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/TableFilter.js b/lib/TableFilter.js
new file mode 100644
index 000000000..e059e59ea
--- /dev/null
+++ b/lib/TableFilter.js
@@ -0,0 +1,156 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _Const = require('./Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+var _classnames = require('classnames');
+
+var _classnames2 = _interopRequireDefault(_classnames);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var TableFilter = function (_Component) {
+ _inherits(TableFilter, _Component);
+
+ function TableFilter(props) {
+ _classCallCheck(this, TableFilter);
+
+ var _this = _possibleConstructorReturn(this, (TableFilter.__proto__ || Object.getPrototypeOf(TableFilter)).call(this, props));
+
+ _this.handleKeyUp = function () {
+ return _this.__handleKeyUp__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.filterObj = {};
+ return _this;
+ }
+
+ _createClass(TableFilter, [{
+ key: '__handleKeyUp__REACT_HOT_LOADER__',
+ value: function __handleKeyUp__REACT_HOT_LOADER__() {
+ return this.__handleKeyUp__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleKeyUp__REACT_HOT_LOADER__',
+ value: function __handleKeyUp__REACT_HOT_LOADER__(e) {
+ var _e$currentTarget = e.currentTarget,
+ value = _e$currentTarget.value,
+ name = _e$currentTarget.name;
+
+ if (value.trim() === '') {
+ delete this.filterObj[name];
+ } else {
+ this.filterObj[name] = value;
+ }
+ this.props.onFilter(this.filterObj);
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _props = this.props,
+ striped = _props.striped,
+ condensed = _props.condensed,
+ rowSelectType = _props.rowSelectType,
+ columns = _props.columns;
+
+ var tableClasses = (0, _classnames2.default)('table', {
+ 'table-striped': striped,
+ 'table-condensed': condensed
+ });
+ var selectRowHeader = null;
+
+ if (rowSelectType === _Const2.default.ROW_SELECT_SINGLE || rowSelectType === _Const2.default.ROW_SELECT_MULTI) {
+ var style = {
+ width: 35,
+ paddingLeft: 0,
+ paddingRight: 0
+ };
+ selectRowHeader = _react2.default.createElement(
+ 'th',
+ { style: style, key: -1 },
+ 'Filter'
+ );
+ }
+
+ var filterField = columns.map(function (column) {
+ var hidden = column.hidden,
+ width = column.width,
+ name = column.name;
+
+ var thStyle = {
+ display: hidden ? 'none' : null,
+ width: width
+ };
+ return _react2.default.createElement(
+ 'th',
+ { key: name, style: thStyle },
+ _react2.default.createElement(
+ 'div',
+ { className: 'th-inner table-header-column' },
+ _react2.default.createElement('input', { size: '10', type: 'text',
+ placeholder: name, name: name, onKeyUp: this.handleKeyUp })
+ )
+ );
+ }, this);
+
+ return _react2.default.createElement(
+ 'table',
+ { className: tableClasses, style: { marginTop: 5 } },
+ _react2.default.createElement(
+ 'thead',
+ null,
+ _react2.default.createElement(
+ 'tr',
+ { style: { borderBottomStyle: 'hidden' } },
+ selectRowHeader,
+ filterField
+ )
+ )
+ );
+ }
+ }]);
+
+ return TableFilter;
+}(_react.Component);
+
+TableFilter.propTypes = {
+ columns: _propTypes2.default.array,
+ rowSelectType: _propTypes2.default.string,
+ onFilter: _propTypes2.default.func
+};
+var _default = TableFilter;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(TableFilter, 'TableFilter', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableFilter.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableFilter.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/TableFooter.js b/lib/TableFooter.js
new file mode 100644
index 000000000..a8907e1c0
--- /dev/null
+++ b/lib/TableFooter.js
@@ -0,0 +1,149 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _classnames = require('classnames');
+
+var _classnames2 = _interopRequireDefault(_classnames);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var TableFooter = function (_Component) {
+ _inherits(TableFooter, _Component);
+
+ function TableFooter() {
+ _classCallCheck(this, TableFooter);
+
+ return _possibleConstructorReturn(this, (TableFooter.__proto__ || Object.getPrototypeOf(TableFooter)).apply(this, arguments));
+ }
+
+ _createClass(TableFooter, [{
+ key: 'render',
+ value: function render() {
+ var _this2 = this;
+
+ var _props = this.props,
+ hideSelectColumn = _props.hideSelectColumn,
+ expandColumnVisible = _props.expandColumnVisible;
+
+ var containerClasses = (0, _classnames2.default)('react-bs-container-footer', 'table-footer-wrapper');
+ var tableClasses = (0, _classnames2.default)('table', 'table-hover', {
+ 'table-bordered': this.props.bordered,
+ 'table-condensed': this.props.condensed
+ }, this.props.tableFooterClass);
+ return _react2.default.createElement(
+ 'div',
+ {
+ ref: function ref(node) {
+ return _this2.container = node;
+ },
+ className: containerClasses,
+ style: this.props.style },
+ this.props.children.map(function (footerItem, footerItemIndex) {
+ return _react2.default.createElement(
+ 'span',
+ { key: footerItemIndex },
+ _react2.default.createElement(
+ 'table',
+ { className: tableClasses },
+ _react2.default.cloneElement(_this2.props.colGroups),
+ _react2.default.createElement(
+ 'tfoot',
+ null,
+ _react2.default.createElement(
+ 'tr',
+ { ref: function ref(node) {
+ return _this2.footer = node;
+ } },
+ hideSelectColumn ? null : _this2.renderSelectionOrExpandCol(),
+ !expandColumnVisible ? null : _this2.renderSelectionOrExpandCol(),
+ _this2.props.columns.map(function (columnItem, colIndex) {
+ if (!columnItem.hidden) {
+ var footerObj = footerItem.filter(function (item) {
+ return item.columnIndex === colIndex;
+ });
+ var footerData = void 0;
+ var thAlignment = 'left';
+ if (footerObj.length) {
+ thAlignment = footerObj[0].align;
+ if (footerObj[0].formatter) {
+ footerData = footerObj[0].formatter(_this2.props.footerFormatterReturnData);
+ } else {
+ footerData = footerObj[0].label;
+ }
+ } else {
+ footerData = '';
+ }
+ return _react2.default.createElement(
+ 'th',
+ {
+ key: colIndex,
+ style: {
+ minWidth: _this2.props.columns[colIndex].width + 'px',
+ textAlign: thAlignment
+ } },
+ footerData
+ );
+ }
+ })
+ )
+ )
+ )
+ );
+ })
+ );
+ }
+ }, {
+ key: 'renderSelectionOrExpandCol',
+ value: function renderSelectionOrExpandCol() {
+ return _react2.default.createElement('th', null);
+ }
+ }]);
+
+ return TableFooter;
+}(_react.Component);
+
+TableFooter.propTypes = {
+ tableHeaderClass: _propTypes2.default.string,
+ style: _propTypes2.default.object,
+ hideSelectColumn: _propTypes2.default.bool,
+ expandColumnVisible: _propTypes2.default.bool,
+ bordered: _propTypes2.default.bool,
+ condensed: _propTypes2.default.bool,
+ isFiltered: _propTypes2.default.bool,
+ sortIndicator: _propTypes2.default.bool
+};
+
+var _default = TableFooter;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(TableFooter, 'TableFooter', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableFooter.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableFooter.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/TableHeader.js b/lib/TableHeader.js
new file mode 100644
index 000000000..b24a173a9
--- /dev/null
+++ b/lib/TableHeader.js
@@ -0,0 +1,312 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _reactDom = require('react-dom');
+
+var _reactDom2 = _interopRequireDefault(_reactDom);
+
+var _Const = require('./Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+var _classnames = require('classnames');
+
+var _classnames2 = _interopRequireDefault(_classnames);
+
+var _SelectRowHeaderColumn = require('./SelectRowHeaderColumn');
+
+var _SelectRowHeaderColumn2 = _interopRequireDefault(_SelectRowHeaderColumn);
+
+var _ExpandRowHeaderColumn = require('./ExpandRowHeaderColumn');
+
+var _ExpandRowHeaderColumn2 = _interopRequireDefault(_ExpandRowHeaderColumn);
+
+var _util = require('./util');
+
+var _util2 = _interopRequireDefault(_util);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var Checkbox = function (_Component) {
+ _inherits(Checkbox, _Component);
+
+ function Checkbox() {
+ _classCallCheck(this, Checkbox);
+
+ return _possibleConstructorReturn(this, (Checkbox.__proto__ || Object.getPrototypeOf(Checkbox)).apply(this, arguments));
+ }
+
+ _createClass(Checkbox, [{
+ key: 'componentDidMount',
+ value: function componentDidMount() {
+ this.update(this.props.checked);
+ }
+ /* eslint-disable */
+
+ }, {
+ key: 'UNSAFE_componentWillReceiveProps',
+ value: function UNSAFE_componentWillReceiveProps(props) {
+ this.update(props.checked);
+ }
+ /* eslint-enable */
+
+ }, {
+ key: 'update',
+ value: function update(checked) {
+ _reactDom2.default.findDOMNode(this).indeterminate = checked === 'indeterminate';
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ return _react2.default.createElement('input', { className: 'react-bs-select-all',
+ type: 'checkbox',
+ checked: this.props.checked,
+ onChange: this.props.onChange });
+ }
+ }]);
+
+ return Checkbox;
+}(_react.Component);
+
+function getSortOrder(sortList, field, enableSort) {
+ if (!enableSort) return undefined;
+ var result = sortList.filter(function (sortObj) {
+ return sortObj.sortField === field;
+ });
+ if (result.length > 0) {
+ return result[0].order;
+ } else {
+ return undefined;
+ }
+}
+
+var TableHeader = function (_Component2) {
+ _inherits(TableHeader, _Component2);
+
+ function TableHeader() {
+ var _ref;
+
+ var _temp, _this2, _ret;
+
+ _classCallCheck(this, TableHeader);
+
+ for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ return _ret = (_temp = (_this2 = _possibleConstructorReturn(this, (_ref = TableHeader.__proto__ || Object.getPrototypeOf(TableHeader)).call.apply(_ref, [this].concat(args))), _this2), _this2.getHeaderColGrouop = function () {
+ var _this3;
+
+ return (_this3 = _this2).__getHeaderColGrouop__REACT_HOT_LOADER__.apply(_this3, arguments);
+ }, _temp), _possibleConstructorReturn(_this2, _ret);
+ }
+
+ _createClass(TableHeader, [{
+ key: '__getHeaderColGrouop__REACT_HOT_LOADER__',
+ value: function __getHeaderColGrouop__REACT_HOT_LOADER__() {
+ return this.__getHeaderColGrouop__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _this4 = this;
+
+ var _props = this.props,
+ sortIndicator = _props.sortIndicator,
+ sortList = _props.sortList,
+ onSort = _props.onSort,
+ reset = _props.reset,
+ version = _props.version,
+ condensed = _props.condensed,
+ bordered = _props.bordered,
+ expandedColumnHeaderComponent = _props.expandedColumnHeaderComponent,
+ noAnyExpand = _props.noAnyExpand,
+ toggleExpandAllChilds = _props.toggleExpandAllChilds,
+ expandAll = _props.expandAll;
+
+ var containerClasses = (0, _classnames2.default)('react-bs-container-header', 'table-header-wrapper', this.props.headerContainerClass);
+ var customTableClasses = {
+ 'table-bordered': bordered
+ };
+ if (condensed) {
+ if (_util2.default.isBootstrap4(version)) customTableClasses['table-sm'] = true;else customTableClasses['table-condensed'] = true;
+ }
+ var tableClasses = (0, _classnames2.default)('table', 'table-hover', customTableClasses, this.props.tableHeaderClass);
+
+ var rowCount = Math.max.apply(Math, _toConsumableArray(_react2.default.Children.map(this.props.children, function (elm) {
+ return elm && elm.props.row ? Number(elm.props.row) : 0;
+ })));
+
+ var rows = [];
+ var rowKey = 0;
+
+ rows[0] = [];
+ rows[0].push([this.props.expandColumnVisible && this.props.expandColumnBeforeSelectColumn && _react2.default.createElement(_ExpandRowHeaderColumn2.default, { key: 'expandCol', rowCount: rowCount + 1,
+ expandedColumnHeaderComponent: expandedColumnHeaderComponent,
+ noAnyExpand: noAnyExpand,
+ expandAll: expandAll,
+ toggleExpandAllChilds: toggleExpandAllChilds })], [this.renderSelectRowHeader(rowCount + 1, rowKey++)], [this.props.expandColumnVisible && !this.props.expandColumnBeforeSelectColumn && _react2.default.createElement(_ExpandRowHeaderColumn2.default, { key: 'expandCol', rowCount: rowCount + 1,
+ expandedColumnHeaderComponent: expandedColumnHeaderComponent,
+ noAnyExpand: noAnyExpand,
+ expandAll: expandAll,
+ toggleExpandAllChilds: toggleExpandAllChilds })]);
+
+ _react2.default.Children.forEach(this.props.children, function (elm) {
+ if (elm === null || elm === undefined) {
+ // Skip null or undefined elements.
+ return;
+ }
+ var _elm$props = elm.props,
+ dataField = _elm$props.dataField,
+ dataSort = _elm$props.dataSort;
+
+ var sort = getSortOrder(sortList, dataField, dataSort);
+ var rowIndex = elm.props.row ? Number(elm.props.row) : 0;
+ var rowSpan = elm.props.rowSpan ? Number(elm.props.rowSpan) : 1;
+ if (rows[rowIndex] === undefined) {
+ rows[rowIndex] = [];
+ }
+ if (rowSpan + rowIndex === rowCount + 1) {
+ rows[rowIndex].push(_react2.default.cloneElement(elm, { reset: reset, key: rowKey++, onSort: onSort, sort: sort, sortIndicator: sortIndicator, isOnlyHead: false, version: version }));
+ } else {
+ rows[rowIndex].push(_react2.default.cloneElement(elm, { key: rowKey++, isOnlyHead: true, version: version }));
+ }
+ });
+
+ var trs = rows.map(function (row, indexRow) {
+ return _react2.default.createElement(
+ 'tr',
+ { key: indexRow },
+ row
+ );
+ });
+
+ return _react2.default.createElement(
+ 'div',
+ {
+ ref: function ref(node) {
+ return _this4.container = node;
+ },
+ className: containerClasses,
+ style: this.props.style },
+ _react2.default.createElement(
+ 'table',
+ { className: tableClasses },
+ _react2.default.cloneElement(this.props.colGroups, { ref: function ref(node) {
+ return _this4.headerGrp = node;
+ } }),
+ _react2.default.createElement(
+ 'thead',
+ { ref: function ref(node) {
+ return _this4.header = node;
+ } },
+ trs
+ )
+ )
+ );
+ }
+ }, {
+ key: '__getHeaderColGrouop__REACT_HOT_LOADER__',
+ value: function __getHeaderColGrouop__REACT_HOT_LOADER__() {
+ return this.headerGrp.childNodes;
+ }
+ }, {
+ key: 'renderSelectRowHeader',
+ value: function renderSelectRowHeader(rowCount, rowKey) {
+ if (this.props.hideSelectColumn) {
+ return null;
+ } else if (this.props.customComponent) {
+ var CustomComponent = this.props.customComponent;
+ return _react2.default.createElement(
+ _SelectRowHeaderColumn2.default,
+ { key: rowKey, rowCount: rowCount },
+ _react2.default.createElement(CustomComponent, { type: 'checkbox', checked: this.props.isSelectAll,
+ indeterminate: this.props.isSelectAll === 'indeterminate', disabled: false,
+ onChange: this.props.onSelectAllRow, rowIndex: 'Header' })
+ );
+ } else if (this.props.rowSelectType === _Const2.default.ROW_SELECT_SINGLE) {
+ return _react2.default.createElement(_SelectRowHeaderColumn2.default, { key: rowKey, rowCount: rowCount });
+ } else if (this.props.rowSelectType === _Const2.default.ROW_SELECT_MULTI) {
+ return _react2.default.createElement(
+ _SelectRowHeaderColumn2.default,
+ { key: rowKey, rowCount: rowCount },
+ _react2.default.createElement(Checkbox, {
+ onChange: this.props.onSelectAllRow,
+ checked: this.props.isSelectAll })
+ );
+ } else {
+ return null;
+ }
+ }
+ }]);
+
+ return TableHeader;
+}(_react.Component);
+
+TableHeader.propTypes = {
+ headerContainerClass: _propTypes2.default.string,
+ tableHeaderClass: _propTypes2.default.string,
+ style: _propTypes2.default.object,
+ rowSelectType: _propTypes2.default.string,
+ onSort: _propTypes2.default.func,
+ onSelectAllRow: _propTypes2.default.func,
+ sortList: _propTypes2.default.array,
+ hideSelectColumn: _propTypes2.default.bool,
+ bordered: _propTypes2.default.bool,
+ condensed: _propTypes2.default.bool,
+ isFiltered: _propTypes2.default.bool,
+ isSelectAll: _propTypes2.default.oneOf([true, 'indeterminate', false]),
+ sortIndicator: _propTypes2.default.bool,
+ customComponent: _propTypes2.default.func,
+ colGroups: _propTypes2.default.element,
+ reset: _propTypes2.default.bool,
+ expandColumnVisible: _propTypes2.default.bool,
+ expandColumnComponent: _propTypes2.default.func,
+ expandedColumnHeaderComponent: _propTypes2.default.func,
+ expandColumnBeforeSelectColumn: _propTypes2.default.bool,
+ version: _propTypes2.default.string,
+ noAnyExpand: _propTypes2.default.bool,
+ expandAll: _propTypes2.default.bool,
+ toggleExpandAllChilds: _propTypes2.default.func
+};
+
+var _default = TableHeader;
+exports.default = _default;
+;
+
+var _temp2 = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(Checkbox, 'Checkbox', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableHeader.js');
+
+ __REACT_HOT_LOADER__.register(getSortOrder, 'getSortOrder', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableHeader.js');
+
+ __REACT_HOT_LOADER__.register(TableHeader, 'TableHeader', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableHeader.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableHeader.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/TableHeaderColumn.js b/lib/TableHeaderColumn.js
new file mode 100644
index 000000000..160e36a95
--- /dev/null
+++ b/lib/TableHeaderColumn.js
@@ -0,0 +1,475 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _classnames = require('classnames');
+
+var _classnames2 = _interopRequireDefault(_classnames);
+
+var _Const = require('./Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+var _util = require('./util');
+
+var _util2 = _interopRequireDefault(_util);
+
+var _Date = require('./filters/Date');
+
+var _Date2 = _interopRequireDefault(_Date);
+
+var _Text = require('./filters/Text');
+
+var _Text2 = _interopRequireDefault(_Text);
+
+var _Regex = require('./filters/Regex');
+
+var _Regex2 = _interopRequireDefault(_Regex);
+
+var _Select = require('./filters/Select');
+
+var _Select2 = _interopRequireDefault(_Select);
+
+var _Number = require('./filters/Number');
+
+var _Number2 = _interopRequireDefault(_Number);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; } /* eslint default-case: 0 */
+/* eslint guard-for-in: 0 */
+
+
+var TableHeaderColumn = function (_Component) {
+ _inherits(TableHeaderColumn, _Component);
+
+ function TableHeaderColumn(props) {
+ _classCallCheck(this, TableHeaderColumn);
+
+ var _this = _possibleConstructorReturn(this, (TableHeaderColumn.__proto__ || Object.getPrototypeOf(TableHeaderColumn)).call(this, props));
+
+ _this.handleColumnClick = function () {
+ return _this.__handleColumnClick__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleFilter = _this.handleFilter.bind(_this);
+ return _this;
+ }
+
+ /* eslint-disable */
+
+
+ _createClass(TableHeaderColumn, [{
+ key: '__handleColumnClick__REACT_HOT_LOADER__',
+ value: function __handleColumnClick__REACT_HOT_LOADER__() {
+ return this.__handleColumnClick__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: 'UNSAFE_componentWillReceiveProps',
+ value: function UNSAFE_componentWillReceiveProps(nextProps) {
+ /* eslint-enable */
+ if (nextProps.reset) {
+ this.cleanFiltered();
+ }
+
+ // If column not displaying the same dataField, reset the filter accordingly
+ if (nextProps.filter && nextProps.dataField !== this.props.dataField) {
+ var emitter = nextProps.filter.emitter || {};
+ var currentFilter = emitter.currentFilter || {};
+ var filter = currentFilter[nextProps.dataField];
+ var value = filter ? filter.value : '';
+
+ var _ref = this.getFilters(nextProps) || {},
+ ref = _ref.ref;
+
+ if (this.refs[ref]) {
+ this.refs[ref].setState({ value: value });
+ }
+ }
+ }
+ }, {
+ key: '__handleColumnClick__REACT_HOT_LOADER__',
+ value: function __handleColumnClick__REACT_HOT_LOADER__() {
+ if (this.props.isOnlyHead || !this.props.dataSort) return;
+ var order = this.props.sort;
+
+ if (!order && this.props.defaultASC) order = _Const2.default.SORT_ASC;else order = this.props.sort === _Const2.default.SORT_DESC ? _Const2.default.SORT_ASC : _Const2.default.SORT_DESC;
+ this.props.onSort(order, this.props.dataField);
+ }
+ }, {
+ key: 'handleFilter',
+ value: function handleFilter(value, type) {
+ var filter = this.props.filter;
+
+ filter.emitter.handleFilter(this.props.dataField, value, type, filter);
+ }
+ }, {
+ key: 'getFilters',
+ value: function getFilters() {
+ var _this2 = this;
+
+ var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.props;
+ var headerText = props.headerText,
+ children = props.children;
+
+ switch (props.filter.type) {
+ case _Const2.default.FILTER_TYPE.TEXT:
+ {
+ return _react2.default.createElement(_Text2.default, _extends({ ref: function ref(n) {
+ return _this2.textFilter = n;
+ } }, props.filter, {
+ columnName: headerText || children, filterHandler: this.handleFilter }));
+ }
+ case _Const2.default.FILTER_TYPE.REGEX:
+ {
+ return _react2.default.createElement(_Regex2.default, _extends({ ref: function ref(n) {
+ return _this2.regexFilter = n;
+ } }, props.filter, {
+ columnName: headerText || children, filterHandler: this.handleFilter }));
+ }
+ case _Const2.default.FILTER_TYPE.SELECT:
+ {
+ return _react2.default.createElement(_Select2.default, _extends({ ref: function ref(n) {
+ return _this2.selectFilter = n;
+ } }, props.filter, {
+ columnName: headerText || children, filterHandler: this.handleFilter }));
+ }
+ case _Const2.default.FILTER_TYPE.NUMBER:
+ {
+ return _react2.default.createElement(_Number2.default, _extends({ ref: function ref(n) {
+ return _this2.numberFilter = n;
+ } }, props.filter, {
+ columnName: headerText || children, filterHandler: this.handleFilter }));
+ }
+ case _Const2.default.FILTER_TYPE.DATE:
+ {
+ return _react2.default.createElement(_Date2.default, _extends({ ref: function ref(n) {
+ return _this2.dateFilter = n;
+ } }, props.filter, {
+ columnName: headerText || children, filterHandler: this.handleFilter }));
+ }
+ case _Const2.default.FILTER_TYPE.CUSTOM:
+ {
+ var elm = props.filter.getElement(this.handleFilter, props.filter.customFilterParameters);
+
+ return _react2.default.cloneElement(elm, { ref: function ref(n) {
+ return _this2.customFilter = n;
+ } });
+ }
+ }
+ }
+ }, {
+ key: 'componentDidMount',
+ value: function componentDidMount() {
+ this.headerCol.setAttribute('data-field', this.props.dataField);
+ }
+ }, {
+ key: 'renderDefaultCaret',
+ value: function renderDefaultCaret(dataSort, isBootstrap4) {
+ if (!dataSort) return null;
+ if (isBootstrap4) {
+ return _react2.default.createElement('span', { className: 'order fa fa-sort',
+ style: { margin: '10px 0 10px 5px', color: '#ccc' } });
+ } else {
+ return _react2.default.createElement(
+ 'span',
+ { className: 'order' },
+ _react2.default.createElement(
+ 'span',
+ { className: 'dropdown' },
+ _react2.default.createElement('span', { className: 'caret', style: { margin: '10px 0 10px 5px', color: '#ccc' } })
+ ),
+ _react2.default.createElement(
+ 'span',
+ { className: 'dropup' },
+ _react2.default.createElement('span', { className: 'caret', style: { margin: '10px 0', color: '#ccc' } })
+ )
+ );
+ }
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _this3 = this;
+
+ var defaultCaret = void 0;
+ var sortCaret = void 0;
+ var sortClass = void 0;
+ var _props = this.props,
+ headerText = _props.headerText,
+ dataAlign = _props.dataAlign,
+ dataField = _props.dataField,
+ headerAlign = _props.headerAlign,
+ headerTitle = _props.headerTitle,
+ hidden = _props.hidden,
+ sort = _props.sort,
+ dataSort = _props.dataSort,
+ sortIndicator = _props.sortIndicator,
+ children = _props.children,
+ caretRender = _props.caretRender,
+ className = _props.className,
+ isOnlyHead = _props.isOnlyHead,
+ version = _props.version,
+ customSortClass = _props.sortHeaderColumnClassName,
+ style = _props.thStyle;
+
+ var thStyle = _extends({
+ textAlign: headerAlign || dataAlign,
+ display: hidden ? 'none' : null
+ }, style);
+ var isBootstrap4 = _util2.default.isBootstrap4(version);
+ if (!isOnlyHead) {
+ if (sortIndicator) {
+ defaultCaret = this.renderDefaultCaret(dataSort, isBootstrap4);
+ }
+ sortCaret = sort ? _util2.default.renderReactSortCaret(sort, isBootstrap4) : defaultCaret;
+ if (caretRender) {
+ sortCaret = caretRender(sort, dataField);
+ }
+ }
+
+ if (sort) {
+ sortClass = _util2.default.isFunction(customSortClass) ? customSortClass(sort, dataField) : customSortClass;
+ }
+ var classes = (0, _classnames2.default)(_util2.default.isFunction(className) ? className() : className, !isOnlyHead && dataSort ? 'sort-column' : '', sortClass);
+
+ var attr = {};
+ if (headerTitle) {
+ if (typeof children === 'string' && !headerText) {
+ attr.title = children;
+ } else {
+ attr.title = headerText;
+ }
+ }
+ return _react2.default.createElement(
+ 'th',
+ _extends({ ref: function ref(node) {
+ return _this3.headerCol = node;
+ },
+ className: classes,
+ style: thStyle,
+ onClick: this.handleColumnClick,
+ rowSpan: this.props.rowSpan,
+ colSpan: this.props.colSpan,
+ 'data-is-only-head': this.props.isOnlyHead
+ }, attr),
+ children,
+ sortCaret,
+ _react2.default.createElement(
+ 'div',
+ { onClick: function onClick(e) {
+ return e.stopPropagation();
+ } },
+ this.props.filter && !isOnlyHead ? this.getFilters() : null
+ )
+ );
+ }
+ }, {
+ key: 'cleanFiltered',
+ value: function cleanFiltered() {
+ if (!this.props.filter) return;
+
+ switch (this.props.filter.type) {
+ case _Const2.default.FILTER_TYPE.TEXT:
+ {
+ this.textFilter.cleanFiltered();
+ break;
+ }
+ case _Const2.default.FILTER_TYPE.REGEX:
+ {
+ this.regexFilter.cleanFiltered();
+ break;
+ }
+ case _Const2.default.FILTER_TYPE.SELECT:
+ {
+ this.selectFilter.cleanFiltered();
+ break;
+ }
+ case _Const2.default.FILTER_TYPE.NUMBER:
+ {
+ this.numberFilter.cleanFiltered();
+ break;
+ }
+ case _Const2.default.FILTER_TYPE.DATE:
+ {
+ this.dateFilter.cleanFiltered();
+ break;
+ }
+ case _Const2.default.FILTER_TYPE.CUSTOM:
+ {
+ this.customFilter.cleanFiltered();
+ break;
+ }
+ }
+ }
+ }, {
+ key: 'applyFilter',
+ value: function applyFilter(val) {
+ if (!this.props.filter) return;
+ switch (this.props.filter.type) {
+ case _Const2.default.FILTER_TYPE.TEXT:
+ {
+ this.textFilter.applyFilter(val);
+ break;
+ }
+ case _Const2.default.FILTER_TYPE.REGEX:
+ {
+ this.regexFilter.applyFilter(val);
+ break;
+ }
+ case _Const2.default.FILTER_TYPE.SELECT:
+ {
+ this.selectFilter.applyFilter(val);
+ break;
+ }
+ case _Const2.default.FILTER_TYPE.NUMBER:
+ {
+ this.numberFilter.applyFilter(val);
+ break;
+ }
+ case _Const2.default.FILTER_TYPE.DATE:
+ {
+ this.dateFilter.applyFilter(val);
+ break;
+ }
+ }
+ }
+ }]);
+
+ return TableHeaderColumn;
+}(_react.Component);
+
+var filterTypeArray = [];
+for (var key in _Const2.default.FILTER_TYPE) {
+ filterTypeArray.push(_Const2.default.FILTER_TYPE[key]);
+}
+
+TableHeaderColumn.propTypes = {
+ dataField: _propTypes2.default.string,
+ dataAlign: _propTypes2.default.string,
+ headerAlign: _propTypes2.default.string,
+ headerTitle: _propTypes2.default.bool,
+ headerText: _propTypes2.default.string,
+ dataSort: _propTypes2.default.bool,
+ onSort: _propTypes2.default.func,
+ dataFormat: _propTypes2.default.func,
+ csvFormat: _propTypes2.default.func,
+ csvHeader: _propTypes2.default.string,
+ csvFieldType: _propTypes2.default.oneOf([_Const2.default.CSV_STRING_TYPE, _Const2.default.CSV_NUMBER_TYPE]),
+ isKey: _propTypes2.default.bool,
+ editable: _propTypes2.default.any,
+ hidden: _propTypes2.default.bool,
+ hiddenOnInsert: _propTypes2.default.bool,
+ searchable: _propTypes2.default.bool,
+ className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.func]),
+ width: _propTypes2.default.string,
+ sortFunc: _propTypes2.default.func,
+ sortFuncExtraData: _propTypes2.default.any,
+ sortHeaderColumnClassName: _propTypes2.default.any,
+ columnClassName: _propTypes2.default.any,
+ editColumnClassName: _propTypes2.default.any,
+ invalidEditColumnClassName: _propTypes2.default.any,
+ columnTitle: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.func, _propTypes2.default.string]),
+ filterFormatted: _propTypes2.default.bool,
+ filterValue: _propTypes2.default.func,
+ sort: _propTypes2.default.string,
+ caretRender: _propTypes2.default.func,
+ formatExtraData: _propTypes2.default.any,
+ csvFormatExtraData: _propTypes2.default.any,
+ filter: _propTypes2.default.shape({
+ type: _propTypes2.default.oneOf(filterTypeArray),
+ delay: _propTypes2.default.number,
+ options: _propTypes2.default.oneOfType([_propTypes2.default.object, // for SelectFilter
+ _propTypes2.default.arrayOf(_propTypes2.default.number) // for NumberFilter
+ ]),
+ numberComparators: _propTypes2.default.arrayOf(_propTypes2.default.string),
+ emitter: _propTypes2.default.object,
+ placeholder: _propTypes2.default.string,
+ getElement: _propTypes2.default.func,
+ customFilterParameters: _propTypes2.default.object,
+ condition: _propTypes2.default.oneOf([_Const2.default.FILTER_COND_EQ, _Const2.default.FILTER_COND_LIKE])
+ }),
+ sortIndicator: _propTypes2.default.bool,
+ export: _propTypes2.default.bool,
+ expandable: _propTypes2.default.bool,
+ tdAttr: _propTypes2.default.object,
+ editTdAttr: _propTypes2.default.object,
+ tdStyle: _propTypes2.default.oneOfType([_propTypes2.default.func, _propTypes2.default.object]),
+ thStyle: _propTypes2.default.object,
+ keyValidator: _propTypes2.default.bool,
+ defaultASC: _propTypes2.default.bool
+};
+
+TableHeaderColumn.defaultProps = {
+ dataAlign: 'left',
+ headerAlign: undefined,
+ headerTitle: true,
+ dataSort: false,
+ dataFormat: undefined,
+ csvFormat: undefined,
+ csvHeader: undefined,
+ csvFieldType: _Const2.default.CSV_STRING_TYPE,
+ isKey: false,
+ editable: true,
+ onSort: undefined,
+ hidden: false,
+ hiddenOnInsert: false,
+ searchable: true,
+ className: '',
+ columnTitle: false,
+ width: null,
+ sortFunc: undefined,
+ columnClassName: '',
+ editColumnClassName: '',
+ invalidEditColumnClassName: '',
+ filterFormatted: false,
+ filterValue: undefined,
+ sort: undefined,
+ formatExtraData: undefined,
+ sortFuncExtraData: undefined,
+ filter: undefined,
+ sortIndicator: true,
+ expandable: true,
+ tdAttr: undefined,
+ editTdAttr: undefined,
+ tdStyle: undefined,
+ thStyle: undefined,
+ keyValidator: false,
+ defaultASC: false
+};
+
+var _default = TableHeaderColumn;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(TableHeaderColumn, 'TableHeaderColumn', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableHeaderColumn.js');
+
+ __REACT_HOT_LOADER__.register(filterTypeArray, 'filterTypeArray', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableHeaderColumn.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableHeaderColumn.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/TableRow.js b/lib/TableRow.js
new file mode 100644
index 000000000..6808827e6
--- /dev/null
+++ b/lib/TableRow.js
@@ -0,0 +1,256 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _classnames = require('classnames');
+
+var _classnames2 = _interopRequireDefault(_classnames);
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _util = require('./util');
+
+var _util2 = _interopRequireDefault(_util);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; } /* eslint no-nested-ternary: 0 */
+
+
+var TableRow = function (_Component) {
+ _inherits(TableRow, _Component);
+
+ function TableRow(props) {
+ _classCallCheck(this, TableRow);
+
+ var _this = _possibleConstructorReturn(this, (TableRow.__proto__ || Object.getPrototypeOf(TableRow)).call(this, props));
+
+ _this.rowClick = function () {
+ return _this.__rowClick__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.expandRow = function () {
+ return _this.__expandRow__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.rowDoubleClick = function () {
+ return _this.__rowDoubleClick__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.rowMouseOut = function () {
+ return _this.__rowMouseOut__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.rowMouseOver = function () {
+ return _this.__rowMouseOver__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.clickNum = 0;
+ return _this;
+ }
+
+ _createClass(TableRow, [{
+ key: '__rowMouseOver__REACT_HOT_LOADER__',
+ value: function __rowMouseOver__REACT_HOT_LOADER__() {
+ return this.__rowMouseOver__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__rowMouseOut__REACT_HOT_LOADER__',
+ value: function __rowMouseOut__REACT_HOT_LOADER__() {
+ return this.__rowMouseOut__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__rowDoubleClick__REACT_HOT_LOADER__',
+ value: function __rowDoubleClick__REACT_HOT_LOADER__() {
+ return this.__rowDoubleClick__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__expandRow__REACT_HOT_LOADER__',
+ value: function __expandRow__REACT_HOT_LOADER__() {
+ return this.__expandRow__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__rowClick__REACT_HOT_LOADER__',
+ value: function __rowClick__REACT_HOT_LOADER__() {
+ return this.__rowClick__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__rowClick__REACT_HOT_LOADER__',
+ value: function __rowClick__REACT_HOT_LOADER__(e) {
+ var _this2 = this;
+
+ var rowIndex = this.props.index + 1;
+ var cellIndex = e.target.cellIndex;
+ if (this.props.onRowClick) this.props.onRowClick(rowIndex, cellIndex, e);
+ var _props = this.props,
+ selectRow = _props.selectRow,
+ unselectableRow = _props.unselectableRow,
+ isSelected = _props.isSelected,
+ onSelectRow = _props.onSelectRow,
+ onExpandRow = _props.onExpandRow,
+ dbClickToEdit = _props.dbClickToEdit;
+
+ if (selectRow) {
+ if (selectRow.clickToSelect && !unselectableRow) {
+ onSelectRow(rowIndex, !isSelected, e);
+ } else if (selectRow.clickToSelectAndEditCell && !unselectableRow) {
+ this.clickNum++;
+ /** if clickToSelectAndEditCell is enabled,
+ * there should be a delay to prevent a selection changed when
+ * user dblick to edit cell on same row but different cell
+ **/
+ setTimeout(function () {
+ if (_this2.clickNum === 1) {
+ onSelectRow(rowIndex, !isSelected, e);
+ onExpandRow(e, rowIndex, cellIndex);
+ }
+ _this2.clickNum = 0;
+ }, 200);
+ } else {
+ if (dbClickToEdit) {
+ this.expandRow(e, rowIndex, cellIndex);
+ }
+ }
+ }
+ }
+ }, {
+ key: '__expandRow__REACT_HOT_LOADER__',
+ value: function __expandRow__REACT_HOT_LOADER__(event, rowIndex, cellIndex) {
+ var _this3 = this;
+
+ this.clickNum++;
+ setTimeout(function () {
+ if (_this3.clickNum === 1) {
+ _this3.props.onExpandRow(event, rowIndex, cellIndex);
+ }
+ _this3.clickNum = 0;
+ }, 200);
+ }
+ }, {
+ key: '__rowDoubleClick__REACT_HOT_LOADER__',
+ value: function __rowDoubleClick__REACT_HOT_LOADER__(e) {
+ if (e.target.tagName !== 'INPUT' && e.target.tagName !== 'SELECT' && e.target.tagName !== 'TEXTAREA') {
+ if (this.props.onRowDoubleClick) {
+ this.props.onRowDoubleClick(this.props.index, e);
+ }
+ }
+ }
+ }, {
+ key: '__rowMouseOut__REACT_HOT_LOADER__',
+ value: function __rowMouseOut__REACT_HOT_LOADER__(e) {
+ var rowIndex = this.props.index;
+ if (this.props.onRowMouseOut) {
+ this.props.onRowMouseOut(rowIndex, e);
+ }
+ }
+ }, {
+ key: '__rowMouseOver__REACT_HOT_LOADER__',
+ value: function __rowMouseOver__REACT_HOT_LOADER__(e) {
+ var rowIndex = this.props.index;
+ if (this.props.onRowMouseOver) {
+ this.props.onRowMouseOver(rowIndex, e);
+ }
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ this.clickNum = 0;
+ var _props2 = this.props,
+ selectRow = _props2.selectRow,
+ row = _props2.row,
+ isSelected = _props2.isSelected,
+ className = _props2.className,
+ index = _props2.index,
+ hidden = _props2.hidden;
+ var style = this.props.style;
+
+ var backgroundColor = null;
+ var selectRowClass = null;
+
+ if (selectRow) {
+ backgroundColor = _util2.default.isFunction(selectRow.bgColor) ? selectRow.bgColor(row, isSelected) : isSelected ? selectRow.bgColor : null;
+
+ selectRowClass = _util2.default.isFunction(selectRow.className) ? selectRow.className(row, isSelected) : isSelected ? selectRow.className : null;
+ }
+
+ if (_util2.default.isFunction(style)) {
+ style = style(row, index);
+ } else {
+ style = _extends({}, style) || {};
+ }
+ // the bgcolor of row selection always overwrite the bgcolor defined by global.
+ if (style && backgroundColor && isSelected) {
+ style.backgroundColor = backgroundColor;
+ }
+ var trCss = {
+ style: _extends({}, style),
+ className: (0, _classnames2.default)(selectRowClass, className)
+ };
+
+ return _react2.default.createElement(
+ 'tr',
+ _extends({}, trCss, {
+ onMouseOver: this.rowMouseOver,
+ onMouseOut: this.rowMouseOut,
+ onClick: this.rowClick,
+ hidden: hidden,
+ onDoubleClick: this.rowDoubleClick }),
+ this.props.children
+ );
+ }
+ }]);
+
+ return TableRow;
+}(_react.Component);
+
+TableRow.propTypes = {
+ index: _propTypes2.default.number,
+ row: _propTypes2.default.any,
+ style: _propTypes2.default.any,
+ isSelected: _propTypes2.default.bool,
+ enableCellEdit: _propTypes2.default.bool,
+ onRowClick: _propTypes2.default.func,
+ onRowDoubleClick: _propTypes2.default.func,
+ onSelectRow: _propTypes2.default.func,
+ onExpandRow: _propTypes2.default.func,
+ onRowMouseOut: _propTypes2.default.func,
+ onRowMouseOver: _propTypes2.default.func,
+ unselectableRow: _propTypes2.default.bool,
+ hidden: _propTypes2.default.bool
+};
+TableRow.defaultProps = {
+ onRowClick: undefined,
+ onRowDoubleClick: undefined,
+ hidden: false
+};
+var _default = TableRow;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(TableRow, 'TableRow', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableRow.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/TableRow.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/csv_export_util.js b/lib/csv_export_util.js
new file mode 100644
index 000000000..d50097c25
--- /dev/null
+++ b/lib/csv_export_util.js
@@ -0,0 +1,111 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _util = require('./util');
+
+var _util2 = _interopRequireDefault(_util);
+
+var _Const = require('./Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+/* eslint block-scoped-var: 0 */
+/* eslint vars-on-top: 0 */
+/* eslint no-var: 0 */
+/* eslint no-unused-vars: 0 */
+if (_util2.default.canUseDOM()) {
+ var filesaver = require('./filesaver');
+ var saveAs = filesaver.saveAs;
+}
+
+function toString(data, keys, separator, excludeCSVHeader) {
+ var dataString = '';
+ if (data.length === 0) return dataString;
+
+ var headCells = [];
+ var rowCount = 0;
+ keys.forEach(function (key) {
+ if (key.row > rowCount) {
+ rowCount = key.row;
+ }
+ // rowCount += (key.rowSpan + key.colSpan - 1);
+ for (var index = 0; index < key.colSpan; index++) {
+ headCells.push(key);
+ }
+ });
+
+ var firstRow = excludeCSVHeader ? 1 : 0;
+
+ var _loop = function _loop(i) {
+ dataString += headCells.map(function (x) {
+ if (x.row + (x.rowSpan - 1) === i) {
+ return '"' + x.header + '"';
+ }
+ if (x.row === i && x.rowSpan > 1) {
+ return '';
+ }
+ }).filter(function (key) {
+ return typeof key !== 'undefined';
+ }).join(separator) + '\n';
+ };
+
+ for (var i = firstRow; i <= rowCount; i++) {
+ _loop(i);
+ }
+
+ keys = keys.filter(function (key) {
+ return key.field !== undefined;
+ });
+
+ data.map(function (row) {
+ keys.map(function (col, i) {
+ var field = col.field,
+ format = col.format,
+ extraData = col.extraData,
+ type = col.type;
+
+ var value = typeof format !== 'undefined' ? format(row[field], row, extraData) : row[field];
+ value = type === _Const2.default.CSV_NUMBER_TYPE ? Number(value) : '"' + value + '"';
+ var cell = typeof value !== 'undefined' ? value : '';
+ dataString += cell;
+ if (i + 1 < keys.length) dataString += separator;
+ });
+
+ dataString += '\n';
+ });
+
+ return dataString;
+}
+
+var exportCSV = function exportCSV(data, keys, filename, separator, noAutoBOM, excludeCSVHeader) {
+ var dataString = toString(data, keys, separator, excludeCSVHeader);
+ if (typeof window !== 'undefined') {
+ noAutoBOM = noAutoBOM === undefined ? true : noAutoBOM;
+ saveAs(new Blob(['\uFEFF', dataString], { type: 'text/plain;charset=utf-8' }), filename, noAutoBOM);
+ }
+};
+
+var _default = exportCSV;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(saveAs, 'saveAs', '/home/nogi/nogi/forks/react-bootstrap-table/src/csv_export_util.js');
+
+ __REACT_HOT_LOADER__.register(toString, 'toString', '/home/nogi/nogi/forks/react-bootstrap-table/src/csv_export_util.js');
+
+ __REACT_HOT_LOADER__.register(exportCSV, 'exportCSV', '/home/nogi/nogi/forks/react-bootstrap-table/src/csv_export_util.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/csv_export_util.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/filesaver.js b/lib/filesaver.js
new file mode 100644
index 000000000..574120c65
--- /dev/null
+++ b/lib/filesaver.js
@@ -0,0 +1,193 @@
+"use strict";
+
+/* FileSaver.js
+ * A saveAs() FileSaver implementation.
+ * 1.3.2
+ * 2016-06-16 18:25:19
+ *
+ * By Eli Grey, http://eligrey.com
+ * License: MIT
+ * See https://github.com/eligrey/FileSaver.js/blob/master/LICENSE.md
+ */
+
+/*global self */
+/*jslint bitwise: true, indent: 4, laxbreak: true, laxcomma: true, smarttabs: true, plusplus: true */
+
+/*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */
+
+var saveAs = saveAs || function (view) {
+ "use strict";
+ // IE <10 is explicitly unsupported
+
+ if (typeof view === "undefined" || typeof navigator !== "undefined" && /MSIE [1-9]\./.test(navigator.userAgent)) {
+ return;
+ }
+ var doc = view.document
+ // only get URL when necessary in case Blob.js hasn't overridden it yet
+ ,
+ get_URL = function get_URL() {
+ return view.URL || view.webkitURL || view;
+ },
+ save_link = doc.createElementNS("http://www.w3.org/1999/xhtml", "a"),
+ can_use_save_link = "download" in save_link,
+ click = function click(node) {
+ var event = new MouseEvent("click");
+ node.dispatchEvent(event);
+ },
+ is_safari = /constructor/i.test(view.HTMLElement) || view.safari,
+ is_chrome_ios = /CriOS\/[\d]+/.test(navigator.userAgent),
+ throw_outside = function throw_outside(ex) {
+ (view.setImmediate || view.setTimeout)(function () {
+ throw ex;
+ }, 0);
+ },
+ force_saveable_type = "application/octet-stream"
+ // the Blob API is fundamentally broken as there is no "downloadfinished" event to subscribe to
+ ,
+ arbitrary_revoke_timeout = 1000 * 40 // in ms
+ ,
+ revoke = function revoke(file) {
+ var revoker = function revoker() {
+ if (typeof file === "string") {
+ // file is an object URL
+ get_URL().revokeObjectURL(file);
+ } else {
+ // file is a File
+ file.remove();
+ }
+ };
+ setTimeout(revoker, arbitrary_revoke_timeout);
+ },
+ dispatch = function dispatch(filesaver, event_types, event) {
+ event_types = [].concat(event_types);
+ var i = event_types.length;
+ while (i--) {
+ var listener = filesaver["on" + event_types[i]];
+ if (typeof listener === "function") {
+ try {
+ listener.call(filesaver, event || filesaver);
+ } catch (ex) {
+ throw_outside(ex);
+ }
+ }
+ }
+ },
+ auto_bom = function auto_bom(blob) {
+ // prepend BOM for UTF-8 XML and text/* types (including HTML)
+ // note: your browser will automatically convert UTF-16 U+FEFF to EF BB BF
+ if (/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(blob.type)) {
+ return new Blob([String.fromCharCode(0xFEFF), blob], { type: blob.type });
+ }
+ return blob;
+ },
+ FileSaver = function FileSaver(blob, name, no_auto_bom) {
+ if (!no_auto_bom) {
+ blob = auto_bom(blob);
+ }
+ // First try a.download, then web filesystem, then object URLs
+ var filesaver = this,
+ type = blob.type,
+ force = type === force_saveable_type,
+ object_url,
+ dispatch_all = function dispatch_all() {
+ dispatch(filesaver, "writestart progress write writeend".split(" "));
+ }
+ // on any filesys errors revert to saving with object URLs
+ ,
+ fs_error = function fs_error() {
+ if ((is_chrome_ios || force && is_safari) && view.FileReader) {
+ // Safari doesn't allow downloading of blob urls
+ var reader = new FileReader();
+ reader.onloadend = function () {
+ var url = is_chrome_ios ? reader.result : reader.result.replace(/^data:[^;]*;/, 'data:attachment/file;');
+ var popup = view.open(url, '_blank');
+ if (!popup) view.location.href = url;
+ url = undefined; // release reference before dispatching
+ filesaver.readyState = filesaver.DONE;
+ dispatch_all();
+ };
+ reader.readAsDataURL(blob);
+ filesaver.readyState = filesaver.INIT;
+ return;
+ }
+ // don't create more object URLs than needed
+ if (!object_url) {
+ object_url = get_URL().createObjectURL(blob);
+ }
+ if (force) {
+ view.location.href = object_url;
+ } else {
+ var opened = view.open(object_url, "_blank");
+ if (!opened) {
+ // Apple does not allow window.open, see https://developer.apple.com/library/safari/documentation/Tools/Conceptual/SafariExtensionGuide/WorkingwithWindowsandTabs/WorkingwithWindowsandTabs.html
+ view.location.href = object_url;
+ }
+ }
+ filesaver.readyState = filesaver.DONE;
+ dispatch_all();
+ revoke(object_url);
+ };
+ filesaver.readyState = filesaver.INIT;
+
+ if (can_use_save_link) {
+ object_url = get_URL().createObjectURL(blob);
+ setTimeout(function () {
+ save_link.href = object_url;
+ save_link.download = name;
+ click(save_link);
+ dispatch_all();
+ revoke(object_url);
+ filesaver.readyState = filesaver.DONE;
+ });
+ return;
+ }
+
+ fs_error();
+ },
+ FS_proto = FileSaver.prototype,
+ saveAs = function saveAs(blob, name, no_auto_bom) {
+ return new FileSaver(blob, name || blob.name || "download", no_auto_bom);
+ };
+ // IE 10+ (native saveAs)
+ if (typeof navigator !== "undefined" && navigator.msSaveOrOpenBlob) {
+ return function (blob, name, no_auto_bom) {
+ name = name || blob.name || "download";
+
+ if (!no_auto_bom) {
+ blob = auto_bom(blob);
+ }
+ return navigator.msSaveOrOpenBlob(blob, name);
+ };
+ }
+
+ FS_proto.abort = function () {};
+ FS_proto.readyState = FS_proto.INIT = 0;
+ FS_proto.WRITING = 1;
+ FS_proto.DONE = 2;
+
+ FS_proto.error = FS_proto.onwritestart = FS_proto.onprogress = FS_proto.onwrite = FS_proto.onabort = FS_proto.onerror = FS_proto.onwriteend = null;
+
+ return saveAs;
+}(typeof self !== "undefined" && self || typeof window !== "undefined" && window || undefined.content);
+// `self` is undefined in Firefox for Android content script context
+// while `this` is nsIContentFrameMessageManager
+// with an attribute `content` that corresponds to the window
+
+if (typeof module !== "undefined" && module.exports) {
+ module.exports.saveAs = saveAs;
+} else if (typeof define !== "undefined" && define !== null && define.amd !== null) {
+ define("FileSaver.js", function () {
+ return saveAs;
+ });
+}
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(saveAs, "saveAs", "/home/nogi/nogi/forks/react-bootstrap-table/src/filesaver.js");
+}();
+
+;
\ No newline at end of file
diff --git a/lib/filters/Date.js b/lib/filters/Date.js
new file mode 100644
index 000000000..2450ae8eb
--- /dev/null
+++ b/lib/filters/Date.js
@@ -0,0 +1,229 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _Const = require('../Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; } /* eslint quotes: 0 */
+/* eslint max-len: 0 */
+
+
+var legalComparators = ['=', '>', '>=', '<', '<=', '!='];
+
+function dateParser(d) {
+ return d.getFullYear() + '-' + ("0" + (d.getMonth() + 1)).slice(-2) + '-' + ("0" + d.getDate()).slice(-2);
+}
+
+var DateFilter = function (_Component) {
+ _inherits(DateFilter, _Component);
+
+ function DateFilter(props) {
+ _classCallCheck(this, DateFilter);
+
+ var _this = _possibleConstructorReturn(this, (DateFilter.__proto__ || Object.getPrototypeOf(DateFilter)).call(this, props));
+
+ _this.dateComparators = _this.props.dateComparators || legalComparators;
+ _this.filter = _this.filter.bind(_this);
+ _this.onChangeComparator = _this.onChangeComparator.bind(_this);
+ return _this;
+ }
+
+ _createClass(DateFilter, [{
+ key: 'setDefaultDate',
+ value: function setDefaultDate() {
+ var defaultDate = '';
+ var defaultValue = this.props.defaultValue;
+
+ if (defaultValue && defaultValue.date) {
+ // Set the appropriate format for the input type=date, i.e. "YYYY-MM-DD"
+ defaultDate = dateParser(new Date(defaultValue.date));
+ }
+ return defaultDate;
+ }
+ }, {
+ key: 'onChangeComparator',
+ value: function onChangeComparator(event) {
+ var date = this.inputDate.value;
+ var comparator = event.target.value;
+ if (date === '') {
+ return;
+ }
+ date = new Date(date);
+ this.props.filterHandler({ date: date, comparator: comparator }, _Const2.default.FILTER_TYPE.DATE);
+ }
+ }, {
+ key: 'getComparatorOptions',
+ value: function getComparatorOptions() {
+ var optionTags = [];
+ optionTags.push(_react2.default.createElement('option', { key: '-1' }));
+ for (var i = 0; i < this.dateComparators.length; i++) {
+ optionTags.push(_react2.default.createElement(
+ 'option',
+ { key: i, value: this.dateComparators[i] },
+ this.dateComparators[i]
+ ));
+ }
+ return optionTags;
+ }
+ }, {
+ key: 'filter',
+ value: function filter(event) {
+ var comparator = this.dateFilterComparator.value;
+ var dateValue = event.target.value;
+ if (dateValue) {
+ this.props.filterHandler({ date: new Date(dateValue), comparator: comparator }, _Const2.default.FILTER_TYPE.DATE);
+ } else {
+ this.props.filterHandler(null, _Const2.default.FILTER_TYPE.DATE);
+ }
+ }
+ }, {
+ key: 'cleanFiltered',
+ value: function cleanFiltered() {
+ var value = this.setDefaultDate();
+ var comparator = this.props.defaultValue ? this.props.defaultValue.comparator : '';
+ this.setState(function () {
+ return { isPlaceholderSelected: value === '' };
+ });
+ this.dateFilterComparator.value = comparator;
+ this.inputDate.value = value;
+ this.props.filterHandler({ date: new Date(value), comparator: comparator }, _Const2.default.FILTER_TYPE.DATE);
+ }
+ }, {
+ key: 'applyFilter',
+ value: function applyFilter(filterDateObj) {
+ var date = filterDateObj.date,
+ comparator = filterDateObj.comparator;
+
+ this.setState(function () {
+ return { isPlaceholderSelected: date === '' };
+ });
+ this.dateFilterComparator.value = comparator;
+ this.inputDate.value = dateParser(date);
+ this.props.filterHandler({ date: date, comparator: comparator }, _Const2.default.FILTER_TYPE.DATE);
+ }
+ }, {
+ key: 'componentDidMount',
+ value: function componentDidMount() {
+ var comparator = this.dateFilterComparator.value;
+ var dateValue = this.inputDate.value;
+ if (comparator && dateValue) {
+ this.props.filterHandler({ date: new Date(dateValue), comparator: comparator }, _Const2.default.FILTER_TYPE.DATE);
+ }
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _this2 = this;
+
+ var _props = this.props,
+ defaultValue = _props.defaultValue,
+ _props$style = _props.style,
+ date = _props$style.date,
+ comparator = _props$style.comparator;
+
+ return _react2.default.createElement(
+ 'div',
+ { className: 'filter date-filter' },
+ _react2.default.createElement(
+ 'select',
+ { ref: function ref(n) {
+ return _this2.dateFilterComparator = n;
+ },
+ style: comparator,
+ className: 'date-filter-comparator form-control',
+ onChange: this.onChangeComparator,
+ defaultValue: defaultValue ? defaultValue.comparator : '' },
+ this.getComparatorOptions()
+ ),
+ _react2.default.createElement('input', { ref: function ref(n) {
+ return _this2.inputDate = n;
+ },
+ className: 'filter date-filter-input form-control',
+ style: date,
+ type: 'date',
+ onChange: this.filter,
+ defaultValue: this.setDefaultDate() })
+ );
+ }
+ }]);
+
+ return DateFilter;
+}(_react.Component);
+
+DateFilter.propTypes = {
+ filterHandler: _propTypes2.default.func.isRequired,
+ defaultValue: _propTypes2.default.shape({
+ date: _propTypes2.default.object,
+ comparator: _propTypes2.default.oneOf(legalComparators)
+ }),
+ style: _propTypes2.default.shape({
+ date: _propTypes2.default.oneOfType([_propTypes2.default.object]),
+ comparator: _propTypes2.default.oneOfType([_propTypes2.default.object])
+ }),
+ /* eslint consistent-return: 0 */
+ dateComparators: function dateComparators(props, propName) {
+ if (!props[propName]) {
+ return;
+ }
+ for (var i = 0; i < props[propName].length; i++) {
+ var comparatorIsValid = false;
+ for (var j = 0; j < legalComparators.length; j++) {
+ if (legalComparators[j] === props[propName][i]) {
+ comparatorIsValid = true;
+ break;
+ }
+ }
+ if (!comparatorIsValid) {
+ return new Error('Date comparator provided is not supported.\n Use only ' + legalComparators);
+ }
+ }
+ },
+ columnName: _propTypes2.default.any
+};
+
+DateFilter.defaultProps = {
+ style: {
+ date: null,
+ comparator: null
+ }
+};
+
+var _default = DateFilter;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(legalComparators, 'legalComparators', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Date.js');
+
+ __REACT_HOT_LOADER__.register(dateParser, 'dateParser', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Date.js');
+
+ __REACT_HOT_LOADER__.register(DateFilter, 'DateFilter', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Date.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Date.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/filters/Number.js b/lib/filters/Number.js
new file mode 100644
index 000000000..bc15979b8
--- /dev/null
+++ b/lib/filters/Number.js
@@ -0,0 +1,284 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _classnames = require('classnames');
+
+var _classnames2 = _interopRequireDefault(_classnames);
+
+var _Const = require('../Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var legalComparators = ['=', '>', '>=', '<', '<=', '!='];
+
+var NumberFilter = function (_Component) {
+ _inherits(NumberFilter, _Component);
+
+ function NumberFilter(props) {
+ _classCallCheck(this, NumberFilter);
+
+ var _this = _possibleConstructorReturn(this, (NumberFilter.__proto__ || Object.getPrototypeOf(NumberFilter)).call(this, props));
+
+ _this.numberComparators = _this.props.numberComparators || legalComparators;
+ _this.timeout = null;
+ _this.state = {
+ isPlaceholderSelected: _this.props.defaultValue === undefined || _this.props.defaultValue.number === undefined || _this.props.options && _this.props.options.indexOf(_this.props.defaultValue.number) === -1
+ };
+ _this.onChangeNumber = _this.onChangeNumber.bind(_this);
+ _this.onChangeNumberSet = _this.onChangeNumberSet.bind(_this);
+ _this.onChangeComparator = _this.onChangeComparator.bind(_this);
+ return _this;
+ }
+
+ _createClass(NumberFilter, [{
+ key: 'onChangeNumber',
+ value: function onChangeNumber(event) {
+ var _this2 = this;
+
+ var comparator = this.numberFilterComparator.value;
+ if (comparator === '') {
+ return;
+ }
+ if (this.timeout) {
+ clearTimeout(this.timeout);
+ }
+ var filterValue = event.target.value;
+ this.timeout = setTimeout(function () {
+ _this2.props.filterHandler({ number: filterValue, comparator: comparator }, _Const2.default.FILTER_TYPE.NUMBER);
+ }, this.props.delay);
+ }
+ }, {
+ key: 'onChangeNumberSet',
+ value: function onChangeNumberSet(event) {
+ var comparator = this.numberFilterComparator.value;
+ var value = event.target.value;
+
+ this.setState(function () {
+ return { isPlaceholderSelected: value === '' };
+ });
+ if (comparator === '') {
+ return;
+ }
+ this.props.filterHandler({ number: value, comparator: comparator }, _Const2.default.FILTER_TYPE.NUMBER);
+ }
+ }, {
+ key: 'onChangeComparator',
+ value: function onChangeComparator(event) {
+ var value = this.numberFilter.value;
+ var comparator = event.target.value;
+ if (value === '') {
+ return;
+ }
+ this.props.filterHandler({ number: value, comparator: comparator }, _Const2.default.FILTER_TYPE.NUMBER);
+ }
+ }, {
+ key: 'cleanFiltered',
+ value: function cleanFiltered() {
+ var value = this.props.defaultValue ? this.props.defaultValue.number : '';
+ var comparator = this.props.defaultValue ? this.props.defaultValue.comparator : '';
+ this.setState(function () {
+ return { isPlaceholderSelected: value === '' };
+ });
+ this.numberFilterComparator.value = comparator;
+ this.numberFilter.value = value;
+ this.props.filterHandler({ number: value, comparator: comparator }, _Const2.default.FILTER_TYPE.NUMBER);
+ }
+ }, {
+ key: 'applyFilter',
+ value: function applyFilter(filterObj) {
+ var number = filterObj.number,
+ comparator = filterObj.comparator;
+
+ this.setState(function () {
+ return { isPlaceholderSelected: number === '' };
+ });
+ this.numberFilterComparator.value = comparator;
+ this.numberFilter.value = number;
+ this.props.filterHandler({ number: number, comparator: comparator }, _Const2.default.FILTER_TYPE.NUMBER);
+ }
+ }, {
+ key: 'getComparatorOptions',
+ value: function getComparatorOptions() {
+ var optionTags = [];
+ var withoutEmptyComparatorOption = this.props.withoutEmptyComparatorOption;
+
+ if (!withoutEmptyComparatorOption) {
+ optionTags.push(_react2.default.createElement('option', { key: '-1' }));
+ }
+ for (var i = 0; i < this.numberComparators.length; i++) {
+ optionTags.push(_react2.default.createElement(
+ 'option',
+ { key: i, value: this.numberComparators[i] },
+ this.numberComparators[i]
+ ));
+ }
+ return optionTags;
+ }
+ }, {
+ key: 'getNumberOptions',
+ value: function getNumberOptions() {
+ var optionTags = [];
+ var _props = this.props,
+ options = _props.options,
+ withoutEmptyNumberOption = _props.withoutEmptyNumberOption;
+
+ if (!withoutEmptyNumberOption) {
+ optionTags.push(_react2.default.createElement(
+ 'option',
+ { key: '-1', value: '' },
+ this.props.placeholder || 'Select ' + this.props.columnName + '...'
+ ));
+ }
+ for (var i = 0; i < options.length; i++) {
+ optionTags.push(_react2.default.createElement(
+ 'option',
+ { key: i, value: options[i] },
+ options[i]
+ ));
+ }
+ return optionTags;
+ }
+ }, {
+ key: 'componentDidMount',
+ value: function componentDidMount() {
+ var comparator = this.numberFilterComparator.value;
+ var number = this.numberFilter.value;
+ if (comparator && number) {
+ this.props.filterHandler({ number: number, comparator: comparator }, _Const2.default.FILTER_TYPE.NUMBER);
+ }
+ }
+ }, {
+ key: 'componentWillUnmount',
+ value: function componentWillUnmount() {
+ clearTimeout(this.timeout);
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _this3 = this;
+
+ var selectClass = (0, _classnames2.default)('select-filter', 'number-filter-input', 'form-control', { 'placeholder-selected': this.state.isPlaceholderSelected });
+
+ return _react2.default.createElement(
+ 'div',
+ { className: 'filter number-filter' },
+ _react2.default.createElement(
+ 'select',
+ { ref: function ref(n) {
+ return _this3.numberFilterComparator = n;
+ },
+ style: this.props.style.comparator,
+ className: 'number-filter-comparator form-control',
+ onChange: this.onChangeComparator,
+ defaultValue: this.props.defaultValue ? this.props.defaultValue.comparator : '' },
+ this.getComparatorOptions()
+ ),
+ this.props.options ? _react2.default.createElement(
+ 'select',
+ { ref: function ref(n) {
+ return _this3.numberFilter = n;
+ },
+ className: selectClass,
+ onChange: this.onChangeNumberSet,
+ defaultValue: this.props.defaultValue ? this.props.defaultValue.number : '' },
+ this.getNumberOptions()
+ ) : _react2.default.createElement('input', { ref: function ref(n) {
+ return _this3.numberFilter = n;
+ },
+ type: 'number',
+ style: this.props.style.number,
+ className: 'number-filter-input form-control',
+ placeholder: this.props.placeholder || 'Enter ' + this.props.columnName + '...',
+ onChange: this.onChangeNumber,
+ defaultValue: this.props.defaultValue ? this.props.defaultValue.number : '' })
+ );
+ }
+ }]);
+
+ return NumberFilter;
+}(_react.Component);
+
+NumberFilter.propTypes = {
+ filterHandler: _propTypes2.default.func.isRequired,
+ options: _propTypes2.default.arrayOf(_propTypes2.default.number),
+ defaultValue: _propTypes2.default.shape({
+ number: _propTypes2.default.number,
+ comparator: _propTypes2.default.oneOf(legalComparators)
+ }),
+ style: _propTypes2.default.shape({
+ number: _propTypes2.default.oneOfType([_propTypes2.default.object]),
+ comparator: _propTypes2.default.oneOfType([_propTypes2.default.object])
+ }),
+ delay: _propTypes2.default.number,
+ /* eslint consistent-return: 0 */
+ numberComparators: function numberComparators(props, propName) {
+ if (!props[propName]) {
+ return;
+ }
+ for (var i = 0; i < props[propName].length; i++) {
+ var comparatorIsValid = false;
+ for (var j = 0; j < legalComparators.length; j++) {
+ if (legalComparators[j] === props[propName][i]) {
+ comparatorIsValid = true;
+ break;
+ }
+ }
+ if (!comparatorIsValid) {
+ return new Error('Number comparator provided is not supported.\n Use only ' + legalComparators);
+ }
+ }
+ },
+ placeholder: _propTypes2.default.string,
+ columnName: _propTypes2.default.any,
+ withoutEmptyComparatorOption: _propTypes2.default.bool,
+ withoutEmptyNumberOption: _propTypes2.default.bool
+};
+
+NumberFilter.defaultProps = {
+ delay: _Const2.default.FILTER_DELAY,
+ withoutEmptyComparatorOption: false,
+ withoutEmptyNumberOption: false,
+ style: {
+ number: null,
+ comparator: null
+ }
+};
+
+var _default = NumberFilter;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(legalComparators, 'legalComparators', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Number.js');
+
+ __REACT_HOT_LOADER__.register(NumberFilter, 'NumberFilter', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Number.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Number.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/filters/Regex.js b/lib/filters/Regex.js
new file mode 100644
index 000000000..9c456431d
--- /dev/null
+++ b/lib/filters/Regex.js
@@ -0,0 +1,134 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _Const = require('../Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var RegexFilter = function (_Component) {
+ _inherits(RegexFilter, _Component);
+
+ function RegexFilter(props) {
+ _classCallCheck(this, RegexFilter);
+
+ var _this = _possibleConstructorReturn(this, (RegexFilter.__proto__ || Object.getPrototypeOf(RegexFilter)).call(this, props));
+
+ _this.filter = _this.filter.bind(_this);
+ _this.timeout = null;
+ return _this;
+ }
+
+ _createClass(RegexFilter, [{
+ key: 'filter',
+ value: function filter(event) {
+ var _this2 = this;
+
+ if (this.timeout) {
+ clearTimeout(this.timeout);
+ }
+ var filterValue = event.target.value;
+ this.timeout = setTimeout(function () {
+ _this2.props.filterHandler(filterValue, _Const2.default.FILTER_TYPE.REGEX);
+ }, this.props.delay);
+ }
+ }, {
+ key: 'cleanFiltered',
+ value: function cleanFiltered() {
+ var value = this.props.defaultValue ? this.props.defaultValue : '';
+ this.inputText.value = value;
+ this.props.filterHandler(value, _Const2.default.FILTER_TYPE.TEXT);
+ }
+ }, {
+ key: 'applyFilter',
+ value: function applyFilter(filterRegx) {
+ this.inputText.value = filterRegx;
+ this.props.filterHandler(filterRegx, _Const2.default.FILTER_TYPE.REGEX);
+ }
+ }, {
+ key: 'componentDidMount',
+ value: function componentDidMount() {
+ var value = this.inputText.value;
+ if (value) {
+ this.props.filterHandler(value, _Const2.default.FILTER_TYPE.REGEX);
+ }
+ }
+ }, {
+ key: 'componentWillUnmount',
+ value: function componentWillUnmount() {
+ clearTimeout(this.timeout);
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _this3 = this;
+
+ var _props = this.props,
+ defaultValue = _props.defaultValue,
+ placeholder = _props.placeholder,
+ columnName = _props.columnName,
+ style = _props.style;
+
+ return _react2.default.createElement('input', { ref: function ref(n) {
+ return _this3.inputText = n;
+ },
+ className: 'filter text-filter form-control',
+ type: 'text',
+ style: style,
+ onChange: this.filter,
+ placeholder: placeholder || 'Enter Regex for ' + columnName + '...',
+ defaultValue: defaultValue ? defaultValue : '' });
+ }
+ }]);
+
+ return RegexFilter;
+}(_react.Component);
+
+RegexFilter.propTypes = {
+ filterHandler: _propTypes2.default.func.isRequired,
+ defaultValue: _propTypes2.default.string,
+ delay: _propTypes2.default.number,
+ placeholder: _propTypes2.default.string,
+ columnName: _propTypes2.default.any,
+ style: _propTypes2.default.oneOfType([_propTypes2.default.object])
+};
+
+RegexFilter.defaultProps = {
+ delay: _Const2.default.FILTER_DELAY
+};
+
+var _default = RegexFilter;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(RegexFilter, 'RegexFilter', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Regex.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Regex.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/filters/Select.js b/lib/filters/Select.js
new file mode 100644
index 000000000..628ac47c2
--- /dev/null
+++ b/lib/filters/Select.js
@@ -0,0 +1,203 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _classnames = require('classnames');
+
+var _classnames2 = _interopRequireDefault(_classnames);
+
+var _Const = require('../Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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 optionsEquals(options1, options2) {
+ var keys = Object.keys(options1);
+ for (var k in keys) {
+ if (options1[k] !== options2[k]) {
+ return false;
+ }
+ }
+ return Object.keys(options1).length === Object.keys(options2).length;
+}
+
+var SelectFilter = function (_Component) {
+ _inherits(SelectFilter, _Component);
+
+ function SelectFilter(props) {
+ _classCallCheck(this, SelectFilter);
+
+ var _this = _possibleConstructorReturn(this, (SelectFilter.__proto__ || Object.getPrototypeOf(SelectFilter)).call(this, props));
+
+ _this.filter = _this.filter.bind(_this);
+ _this.state = {
+ isPlaceholderSelected: _this.props.defaultValue === undefined || !_this.props.options.hasOwnProperty(_this.props.defaultValue)
+ };
+ return _this;
+ }
+
+ /* eslint-disable */
+
+
+ _createClass(SelectFilter, [{
+ key: 'UNSAFE_componentWillReceiveProps',
+ value: function UNSAFE_componentWillReceiveProps() {
+ /* eslint-enable */
+ var currentSelectValue = this.selectInput.value;
+ var isPlaceholderSelected = !currentSelectValue || currentSelectValue === '';
+ this.setState(function () {
+ return {
+ isPlaceholderSelected: isPlaceholderSelected
+ };
+ });
+ }
+ }, {
+ key: 'componentDidUpdate',
+ value: function componentDidUpdate(prevProps) {
+ var needFilter = false;
+ if (this.props.defaultValue !== prevProps.defaultValue) {
+ needFilter = true;
+ } else if (!optionsEquals(this.props.options, prevProps.options)) {
+ needFilter = true;
+ }
+ if (needFilter) {
+ var value = this.selectInput.value;
+ if (value) {
+ this.props.filterHandler(value, _Const2.default.FILTER_TYPE.SELECT);
+ }
+ }
+ }
+ }, {
+ key: 'filter',
+ value: function filter(event) {
+ var value = event.target.value;
+
+ this.setState(function () {
+ return { isPlaceholderSelected: value === '' };
+ });
+ this.props.filterHandler(value, _Const2.default.FILTER_TYPE.SELECT);
+ }
+ }, {
+ key: 'cleanFiltered',
+ value: function cleanFiltered() {
+ var value = this.props.defaultValue !== undefined ? this.props.defaultValue : '';
+ this.setState(function () {
+ return { isPlaceholderSelected: value === '' };
+ });
+ this.selectInput.value = value;
+ this.props.filterHandler(value, _Const2.default.FILTER_TYPE.SELECT);
+ }
+ }, {
+ key: 'applyFilter',
+ value: function applyFilter(filterOption) {
+ filterOption = filterOption + '';
+ this.setState(function () {
+ return { isPlaceholderSelected: filterOption === '' };
+ });
+ this.selectInput.value = filterOption;
+ this.props.filterHandler(filterOption, _Const2.default.FILTER_TYPE.SELECT);
+ }
+ }, {
+ key: 'getOptions',
+ value: function getOptions() {
+ var optionTags = [];
+ var _props = this.props,
+ options = _props.options,
+ placeholder = _props.placeholder,
+ columnName = _props.columnName,
+ selectText = _props.selectText,
+ withoutEmptyOption = _props.withoutEmptyOption;
+
+ var selectTextValue = selectText !== undefined ? selectText : 'Select';
+ if (!withoutEmptyOption) {
+ optionTags.push(_react2.default.createElement(
+ 'option',
+ { key: '-1', value: '' },
+ placeholder || selectTextValue + ' ' + columnName + '...'
+ ));
+ }
+ Object.keys(options).map(function (key) {
+ optionTags.push(_react2.default.createElement(
+ 'option',
+ { key: key, value: key },
+ options[key] + ''
+ ));
+ });
+ return optionTags;
+ }
+ }, {
+ key: 'componentDidMount',
+ value: function componentDidMount() {
+ var value = this.selectInput.value;
+ if (value) {
+ this.props.filterHandler(value, _Const2.default.FILTER_TYPE.SELECT);
+ }
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _this2 = this;
+
+ var selectClass = (0, _classnames2.default)('filter', 'select-filter', 'form-control', { 'placeholder-selected': this.state.isPlaceholderSelected });
+
+ return _react2.default.createElement(
+ 'select',
+ { ref: function ref(n) {
+ return _this2.selectInput = n;
+ },
+ style: this.props.style,
+ className: selectClass,
+ onChange: this.filter,
+ defaultValue: this.props.defaultValue !== undefined ? this.props.defaultValue : '' },
+ this.getOptions()
+ );
+ }
+ }]);
+
+ return SelectFilter;
+}(_react.Component);
+
+SelectFilter.propTypes = {
+ filterHandler: _propTypes2.default.func.isRequired,
+ options: _propTypes2.default.object.isRequired,
+ placeholder: _propTypes2.default.string,
+ columnName: _propTypes2.default.any,
+ style: _propTypes2.default.oneOfType([_propTypes2.default.object])
+};
+
+var _default = SelectFilter;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(optionsEquals, 'optionsEquals', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Select.js');
+
+ __REACT_HOT_LOADER__.register(SelectFilter, 'SelectFilter', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Select.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Select.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/filters/Text.js b/lib/filters/Text.js
new file mode 100644
index 000000000..490e32249
--- /dev/null
+++ b/lib/filters/Text.js
@@ -0,0 +1,154 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _Const = require('../Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var TextFilter = function (_Component) {
+ _inherits(TextFilter, _Component);
+
+ function TextFilter(props) {
+ _classCallCheck(this, TextFilter);
+
+ var _this = _possibleConstructorReturn(this, (TextFilter.__proto__ || Object.getPrototypeOf(TextFilter)).call(this, props));
+
+ _this.filter = _this.filter.bind(_this);
+ _this.timeout = null;
+ _this.state = {
+ value: _this.props.defaultValue || ''
+ };
+ return _this;
+ }
+
+ _createClass(TextFilter, [{
+ key: 'filter',
+ value: function filter(event) {
+ var _this2 = this;
+
+ if (this.timeout) {
+ clearTimeout(this.timeout);
+ }
+ var filterValue = event.target.value;
+ this.setState(function () {
+ return { value: filterValue };
+ });
+ this.timeout = setTimeout(function () {
+ _this2.props.filterHandler(filterValue, _Const2.default.FILTER_TYPE.TEXT);
+ }, this.props.delay);
+ }
+ }, {
+ key: 'cleanFiltered',
+ value: function cleanFiltered() {
+ var value = this.props.defaultValue ? this.props.defaultValue : '';
+ this.setState(function () {
+ return { value: value };
+ });
+ this.props.filterHandler(value, _Const2.default.FILTER_TYPE.TEXT);
+ }
+ }, {
+ key: 'applyFilter',
+ value: function applyFilter(filterText) {
+ this.setState(function () {
+ return { value: filterText };
+ });
+ this.props.filterHandler(filterText, _Const2.default.FILTER_TYPE.TEXT);
+ }
+ }, {
+ key: 'componentDidMount',
+ value: function componentDidMount() {
+ var defaultValue = this.inputText.value;
+ if (defaultValue) {
+ this.props.filterHandler(defaultValue, _Const2.default.FILTER_TYPE.TEXT);
+ }
+ }
+
+ /* eslint-disable */
+
+ }, {
+ key: 'UNSAFE_componentWillReceiveProps',
+ value: function UNSAFE_componentWillReceiveProps(nextProps) {
+ /* eslint-enable */
+ if (nextProps.defaultValue !== this.props.defaultValue) {
+ this.applyFilter(nextProps.defaultValue || '');
+ }
+ }
+ }, {
+ key: 'componentWillUnmount',
+ value: function componentWillUnmount() {
+ clearTimeout(this.timeout);
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _this3 = this;
+
+ var _props = this.props,
+ placeholder = _props.placeholder,
+ columnName = _props.columnName,
+ style = _props.style;
+
+ return _react2.default.createElement('input', { ref: function ref(n) {
+ return _this3.inputText = n;
+ },
+ className: 'filter text-filter form-control',
+ type: 'text',
+ style: style,
+ onChange: this.filter,
+ placeholder: placeholder || 'Enter ' + columnName + '...',
+ value: this.state.value });
+ }
+ }]);
+
+ return TextFilter;
+}(_react.Component);
+
+TextFilter.propTypes = {
+ filterHandler: _propTypes2.default.func.isRequired,
+ defaultValue: _propTypes2.default.string,
+ delay: _propTypes2.default.number,
+ placeholder: _propTypes2.default.string,
+ columnName: _propTypes2.default.any,
+ style: _propTypes2.default.oneOfType([_propTypes2.default.object])
+};
+
+TextFilter.defaultProps = {
+ delay: _Const2.default.FILTER_DELAY
+};
+
+var _default = TextFilter;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(TextFilter, 'TextFilter', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Text.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/filters/Text.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/index.js b/lib/index.js
new file mode 100644
index 000000000..e50d021fe
--- /dev/null
+++ b/lib/index.js
@@ -0,0 +1,98 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.SizePerPageDropDown = exports.ButtonGroup = exports.SearchField = exports.ClearSearchButton = exports.ExportCSVButton = exports.ShowSelectedOnlyButton = exports.DeleteButton = exports.InsertButton = exports.InsertModalFooter = exports.InsertModalBody = exports.InsertModalHeader = exports.TableHeaderColumn = exports.BootstrapTable = undefined;
+
+var _BootstrapTable = require('./BootstrapTable');
+
+var _BootstrapTable2 = _interopRequireDefault(_BootstrapTable);
+
+var _TableHeaderColumn = require('./TableHeaderColumn');
+
+var _TableHeaderColumn2 = _interopRequireDefault(_TableHeaderColumn);
+
+var _InsertModalHeader = require('./toolbar/InsertModalHeader');
+
+var _InsertModalHeader2 = _interopRequireDefault(_InsertModalHeader);
+
+var _InsertModalBody = require('./toolbar/InsertModalBody');
+
+var _InsertModalBody2 = _interopRequireDefault(_InsertModalBody);
+
+var _InsertModalFooter = require('./toolbar/InsertModalFooter');
+
+var _InsertModalFooter2 = _interopRequireDefault(_InsertModalFooter);
+
+var _InsertButton = require('./toolbar/InsertButton');
+
+var _InsertButton2 = _interopRequireDefault(_InsertButton);
+
+var _DeleteButton = require('./toolbar/DeleteButton');
+
+var _DeleteButton2 = _interopRequireDefault(_DeleteButton);
+
+var _ExportCSVButton = require('./toolbar/ExportCSVButton');
+
+var _ExportCSVButton2 = _interopRequireDefault(_ExportCSVButton);
+
+var _ShowSelectedOnlyButton = require('./toolbar/ShowSelectedOnlyButton');
+
+var _ShowSelectedOnlyButton2 = _interopRequireDefault(_ShowSelectedOnlyButton);
+
+var _ClearSearchButton = require('./toolbar/ClearSearchButton');
+
+var _ClearSearchButton2 = _interopRequireDefault(_ClearSearchButton);
+
+var _SearchField = require('./toolbar/SearchField');
+
+var _SearchField2 = _interopRequireDefault(_SearchField);
+
+var _ButtonGroup = require('./toolbar/ButtonGroup');
+
+var _ButtonGroup2 = _interopRequireDefault(_ButtonGroup);
+
+var _SizePerPageDropDown = require('./pagination/SizePerPageDropDown');
+
+var _SizePerPageDropDown2 = _interopRequireDefault(_SizePerPageDropDown);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+if (typeof window !== 'undefined') {
+ window.BootstrapTable = _BootstrapTable2.default;
+ window.TableHeaderColumn = _TableHeaderColumn2.default;
+ window.InsertModalHeader = _InsertModalHeader2.default;
+ window.InsertModalBody = _InsertModalBody2.default;
+ window.InsertModalFooter = _InsertModalFooter2.default;
+ window.InsertButton = _InsertButton2.default;
+ window.DeleteButton = _DeleteButton2.default;
+ window.ShowSelectedOnlyButton = _ShowSelectedOnlyButton2.default;
+ window.ExportCSVButton = _ExportCSVButton2.default;
+ window.ClearSearchButton = _ClearSearchButton2.default;
+ window.SearchField = _SearchField2.default;
+ window.ButtonGroup = _ButtonGroup2.default;
+ window.SizePerPageDropDown = _SizePerPageDropDown2.default;
+}
+exports.BootstrapTable = _BootstrapTable2.default;
+exports.TableHeaderColumn = _TableHeaderColumn2.default;
+exports.InsertModalHeader = _InsertModalHeader2.default;
+exports.InsertModalBody = _InsertModalBody2.default;
+exports.InsertModalFooter = _InsertModalFooter2.default;
+exports.InsertButton = _InsertButton2.default;
+exports.DeleteButton = _DeleteButton2.default;
+exports.ShowSelectedOnlyButton = _ShowSelectedOnlyButton2.default;
+exports.ExportCSVButton = _ExportCSVButton2.default;
+exports.ClearSearchButton = _ClearSearchButton2.default;
+exports.SearchField = _SearchField2.default;
+exports.ButtonGroup = _ButtonGroup2.default;
+exports.SizePerPageDropDown = _SizePerPageDropDown2.default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+}();
+
+;
\ No newline at end of file
diff --git a/lib/pagination/PageButton.js b/lib/pagination/PageButton.js
new file mode 100644
index 000000000..63e0b1c8d
--- /dev/null
+++ b/lib/pagination/PageButton.js
@@ -0,0 +1,103 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _classnames = require('classnames');
+
+var _classnames2 = _interopRequireDefault(_classnames);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var PageButton = function (_Component) {
+ _inherits(PageButton, _Component);
+
+ function PageButton(props) {
+ _classCallCheck(this, PageButton);
+
+ var _this = _possibleConstructorReturn(this, (PageButton.__proto__ || Object.getPrototypeOf(PageButton)).call(this, props));
+
+ _this.pageBtnClick = function () {
+ return _this.__pageBtnClick__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ return _this;
+ }
+
+ _createClass(PageButton, [{
+ key: '__pageBtnClick__REACT_HOT_LOADER__',
+ value: function __pageBtnClick__REACT_HOT_LOADER__() {
+ return this.__pageBtnClick__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__pageBtnClick__REACT_HOT_LOADER__',
+ value: function __pageBtnClick__REACT_HOT_LOADER__(e) {
+ e.preventDefault();
+ this.props.changePage(this.props.pageNumber);
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var classes = (0, _classnames2.default)({
+ 'active': this.props.active,
+ 'disabled': this.props.disable,
+ 'hidden': this.props.hidden,
+ 'page-item': true
+ });
+ return _react2.default.createElement(
+ 'li',
+ { className: classes, title: this.props.title },
+ _react2.default.createElement(
+ 'a',
+ { href: '#', onClick: this.pageBtnClick, className: 'page-link' },
+ this.props.children
+ )
+ );
+ }
+ }]);
+
+ return PageButton;
+}(_react.Component);
+
+PageButton.propTypes = {
+ title: _propTypes2.default.string,
+ changePage: _propTypes2.default.func,
+ active: _propTypes2.default.bool,
+ disable: _propTypes2.default.bool,
+ hidden: _propTypes2.default.bool,
+ children: _propTypes2.default.node,
+ pageNumber: _propTypes2.default.number
+};
+
+var _default = PageButton;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(PageButton, 'PageButton', '/home/nogi/nogi/forks/react-bootstrap-table/src/pagination/PageButton.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/pagination/PageButton.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/pagination/PaginationList.js b/lib/pagination/PaginationList.js
new file mode 100644
index 000000000..ba774edb2
--- /dev/null
+++ b/lib/pagination/PaginationList.js
@@ -0,0 +1,489 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _classnames = require('classnames');
+
+var _classnames2 = _interopRequireDefault(_classnames);
+
+var _PageButton = require('./PageButton.js');
+
+var _PageButton2 = _interopRequireDefault(_PageButton);
+
+var _SizePerPageDropDown = require('./SizePerPageDropDown');
+
+var _SizePerPageDropDown2 = _interopRequireDefault(_SizePerPageDropDown);
+
+var _Const = require('../Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+var _util = require('../util');
+
+var _util2 = _interopRequireDefault(_util);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var PaginationList = function (_Component) {
+ _inherits(PaginationList, _Component);
+
+ function PaginationList(props) {
+ _classCallCheck(this, PaginationList);
+
+ var _this = _possibleConstructorReturn(this, (PaginationList.__proto__ || Object.getPrototypeOf(PaginationList)).call(this, props));
+
+ _this.changePage = function () {
+ return _this.__changePage__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.changeSizePerPage = function () {
+ return _this.__changeSizePerPage__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.toggleDropDown = function () {
+ return _this.__toggleDropDown__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.closeDropDown = function () {
+ return _this.__closeDropDown__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.state = {
+ open: _this.props.open
+ };
+ return _this;
+ }
+
+ /* eslint-disable */
+
+
+ _createClass(PaginationList, [{
+ key: '__closeDropDown__REACT_HOT_LOADER__',
+ value: function __closeDropDown__REACT_HOT_LOADER__() {
+ return this.__closeDropDown__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__toggleDropDown__REACT_HOT_LOADER__',
+ value: function __toggleDropDown__REACT_HOT_LOADER__() {
+ return this.__toggleDropDown__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__changeSizePerPage__REACT_HOT_LOADER__',
+ value: function __changeSizePerPage__REACT_HOT_LOADER__() {
+ return this.__changeSizePerPage__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__changePage__REACT_HOT_LOADER__',
+ value: function __changePage__REACT_HOT_LOADER__() {
+ return this.__changePage__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: 'UNSAFE_componentWillReceiveProps',
+ value: function UNSAFE_componentWillReceiveProps() {
+ /* eslint-enable */
+ var keepSizePerPageState = this.props.keepSizePerPageState;
+
+ if (!keepSizePerPageState) {
+ this.closeDropDown();
+ }
+ }
+ }, {
+ key: '__changePage__REACT_HOT_LOADER__',
+ value: function __changePage__REACT_HOT_LOADER__(page) {
+ var _props = this.props,
+ pageStartIndex = _props.pageStartIndex,
+ prePage = _props.prePage,
+ currPage = _props.currPage,
+ nextPage = _props.nextPage,
+ lastPage = _props.lastPage,
+ firstPage = _props.firstPage,
+ sizePerPage = _props.sizePerPage,
+ keepSizePerPageState = _props.keepSizePerPageState;
+
+
+ if (page === prePage) {
+ page = currPage - 1 < pageStartIndex ? pageStartIndex : currPage - 1;
+ } else if (page === nextPage) {
+ page = currPage + 1 > this.lastPage ? this.lastPage : currPage + 1;
+ } else if (page === lastPage) {
+ page = this.lastPage;
+ } else if (page === firstPage) {
+ page = pageStartIndex;
+ } else {
+ page = parseInt(page, 10);
+ }
+
+ if (keepSizePerPageState) {
+ this.closeDropDown();
+ }
+
+ if (page !== currPage) {
+ this.props.changePage(page, sizePerPage);
+ }
+ }
+ }, {
+ key: '__changeSizePerPage__REACT_HOT_LOADER__',
+ value: function __changeSizePerPage__REACT_HOT_LOADER__(pageNum) {
+ var selectSize = typeof pageNum === 'string' ? parseInt(pageNum, 10) : pageNum;
+ var currPage = this.props.currPage;
+
+ if (selectSize !== this.props.sizePerPage) {
+ this.totalPages = Math.ceil(this.props.dataSize / selectSize);
+ this.lastPage = this.props.pageStartIndex + this.totalPages - 1;
+ if (currPage > this.lastPage) currPage = this.lastPage;
+ this.props.changePage(currPage, selectSize);
+ if (this.props.onSizePerPageList) {
+ this.props.onSizePerPageList(selectSize);
+ }
+ }
+
+ this.closeDropDown();
+ }
+ }, {
+ key: '__toggleDropDown__REACT_HOT_LOADER__',
+ value: function __toggleDropDown__REACT_HOT_LOADER__() {
+ var _this2 = this;
+
+ this.setState(function () {
+ return {
+ open: !_this2.state.open
+ };
+ });
+ }
+ }, {
+ key: '__closeDropDown__REACT_HOT_LOADER__',
+ value: function __closeDropDown__REACT_HOT_LOADER__() {
+ this.setState(function () {
+ return {
+ open: false
+ };
+ });
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _props2 = this.props,
+ currPage = _props2.currPage,
+ dataSize = _props2.dataSize,
+ sizePerPage = _props2.sizePerPage,
+ sizePerPageList = _props2.sizePerPageList,
+ paginationShowsTotal = _props2.paginationShowsTotal,
+ pageStartIndex = _props2.pageStartIndex,
+ paginationPanel = _props2.paginationPanel,
+ hidePageListOnlyOnePage = _props2.hidePageListOnlyOnePage;
+
+ this.totalPages = Math.ceil(dataSize / sizePerPage);
+ this.lastPage = this.props.pageStartIndex + this.totalPages - 1;
+ var pageBtns = this.makePage(_util2.default.isFunction(paginationPanel));
+ var dropdown = this.makeDropDown();
+
+ var offset = Math.abs(_Const2.default.PAGE_START_INDEX - pageStartIndex);
+ var start = (currPage - pageStartIndex) * sizePerPage;
+ start = dataSize === 0 ? 0 : start + 1;
+ var to = Math.min(sizePerPage * (currPage + offset) - 1, dataSize);
+ if (to >= dataSize) to--;
+ var total = paginationShowsTotal ? _react2.default.createElement(
+ 'span',
+ null,
+ 'Showing rows ',
+ start,
+ ' to\xA0',
+ to + 1,
+ ' of\xA0',
+ dataSize
+ ) : null;
+
+ if (_util2.default.isFunction(paginationShowsTotal)) {
+ total = paginationShowsTotal(start, to + 1, dataSize);
+ }
+
+ var content = paginationPanel && paginationPanel({
+ currPage: currPage,
+ sizePerPage: sizePerPage,
+ sizePerPageList: sizePerPageList,
+ pageStartIndex: pageStartIndex,
+ totalPages: this.totalPages,
+ changePage: this.changePage,
+ toggleDropDown: this.toggleDropDown,
+ changeSizePerPage: this.changeSizePerPage,
+ components: {
+ totalText: total,
+ sizePerPageDropdown: dropdown,
+ pageList: pageBtns
+ }
+ });
+
+ var hidePageList = hidePageListOnlyOnePage && this.totalPages === 1 ? 'none' : 'block';
+ return _react2.default.createElement(
+ 'div',
+ { className: 'row', style: { marginTop: 15 } },
+ content || [_react2.default.createElement(
+ 'div',
+ { key: 'paging-left', className: 'col-md-6 col-xs-6 col-sm-6 col-lg-6' },
+ total,
+ sizePerPageList.length > 1 ? dropdown : null
+ ), _react2.default.createElement(
+ 'div',
+ { key: 'paging-right', style: { display: hidePageList },
+ className: 'col-md-6 col-xs-6 col-sm-6 col-lg-6' },
+ pageBtns
+ )]
+ );
+ }
+ }, {
+ key: 'makeDropDown',
+ value: function makeDropDown() {
+ var _this3 = this;
+
+ var dropdown = void 0;
+ var dropdownProps = void 0;
+ var sizePerPageText = '';
+ var _props3 = this.props,
+ sizePerPageDropDown = _props3.sizePerPageDropDown,
+ hideSizePerPage = _props3.hideSizePerPage,
+ sizePerPage = _props3.sizePerPage,
+ sizePerPageList = _props3.sizePerPageList;
+
+ if (sizePerPageDropDown) {
+ dropdown = sizePerPageDropDown({
+ open: this.state.open,
+ hideSizePerPage: hideSizePerPage,
+ currSizePerPage: String(sizePerPage),
+ sizePerPageList: sizePerPageList,
+ toggleDropDown: this.toggleDropDown,
+ changeSizePerPage: this.changeSizePerPage,
+ onBlur: this.closeDropDown
+ });
+ if (dropdown.type.name === _SizePerPageDropDown2.default.name) {
+ dropdownProps = dropdown.props;
+ } else {
+ return dropdown;
+ }
+ }
+
+ if (dropdownProps || !dropdown) {
+ var isBootstrap4 = _util2.default.isBootstrap4(this.props.version);
+ var sizePerPageOptions = sizePerPageList.map(function (_sizePerPage) {
+ var pageText = _sizePerPage.text || _sizePerPage;
+ var pageNum = _sizePerPage.value || _sizePerPage;
+ if (sizePerPage === pageNum) sizePerPageText = pageText;
+ if (isBootstrap4) {
+ return _react2.default.createElement(
+ 'a',
+ {
+ href: '#',
+ tabIndex: '-1',
+ key: pageText,
+ className: 'dropdown-item',
+ onMouseDown: function onMouseDown(e) {
+ e.preventDefault();
+ _this3.changeSizePerPage(pageNum);
+ } },
+ pageText
+ );
+ } else {
+ return _react2.default.createElement(
+ 'li',
+ { key: pageText, role: 'presentation', className: 'dropdown-item' },
+ _react2.default.createElement(
+ 'a',
+ { role: 'menuitem',
+ tabIndex: '-1', href: '#',
+ 'data-page': pageNum,
+ onMouseDown: function onMouseDown(e) {
+ e.preventDefault();
+ _this3.changeSizePerPage(pageNum);
+ } },
+ pageText
+ )
+ );
+ }
+ });
+ dropdown = _react2.default.createElement(_SizePerPageDropDown2.default, _extends({
+ open: this.state.open,
+ hidden: hideSizePerPage,
+ currSizePerPage: String(sizePerPageText),
+ options: sizePerPageOptions,
+ onClick: this.toggleDropDown,
+ onBlur: this.closeDropDown,
+ isBootstrap4: isBootstrap4
+ }, dropdownProps));
+ }
+ return dropdown;
+ }
+ }, {
+ key: 'makePage',
+ value: function makePage() {
+ var _this4 = this;
+
+ var isCustomPagingPanel = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
+
+ var pages = this.getPages();
+ var isStart = function isStart(page, _ref) {
+ var currPage = _ref.currPage,
+ pageStartIndex = _ref.pageStartIndex,
+ firstPage = _ref.firstPage,
+ prePage = _ref.prePage;
+ return currPage === pageStartIndex && (page === firstPage || page === prePage);
+ };
+ var isEnd = function isEnd(page, _ref2) {
+ var currPage = _ref2.currPage,
+ nextPage = _ref2.nextPage,
+ lastPage = _ref2.lastPage;
+ return currPage === _this4.lastPage && (page === nextPage || page === lastPage);
+ };
+ var pageBtns = pages.filter(function (page) {
+ if (this.props.alwaysShowAllBtns) {
+ return true;
+ }
+ return isStart(page, this.props) || isEnd(page, this.props) ? false : true;
+ }, this).map(function (page, index) {
+ var isActive = page === this.props.currPage;
+ var isDisabled = isStart(page, this.props) || isEnd(page, this.props) ? true : false;
+ var title = page + '';
+ var pageNumber = page;
+
+ if (page === this.props.nextPage) {
+ title = this.props.nextPageTitle;
+ pageNumber = this.props.currPage + 1;
+ } else if (page === this.props.prePage) {
+ title = this.props.prePageTitle;
+ pageNumber = this.props.currPage - 1;
+ } else if (page === this.props.firstPage) {
+ title = this.props.firstPageTitle;
+ pageNumber = this.props.pageStartIndex;
+ } else if (page === this.props.lastPage) {
+ title = this.props.lastPageTitle;
+ pageNumber = this.getLastPage();
+ }
+
+ return _react2.default.createElement(
+ _PageButton2.default,
+ { key: index,
+ title: title,
+ changePage: this.changePage,
+ active: isActive,
+ disable: isDisabled,
+ pageNumber: pageNumber },
+ page
+ );
+ }, this);
+ var classname = (0, _classnames2.default)(isCustomPagingPanel ? null : 'react-bootstrap-table-page-btns-ul', 'pagination');
+ return _react2.default.createElement(
+ 'ul',
+ { className: classname },
+ pageBtns
+ );
+ }
+ }, {
+ key: 'getLastPage',
+ value: function getLastPage() {
+ return this.lastPage;
+ }
+ }, {
+ key: 'getPages',
+ value: function getPages() {
+ var pages = void 0;
+ var endPage = this.totalPages;
+ if (endPage <= 0) return [];
+ var startPage = Math.max(this.props.currPage - Math.floor(this.props.paginationSize / 2), this.props.pageStartIndex);
+ endPage = startPage + this.props.paginationSize - 1;
+
+ if (endPage > this.lastPage) {
+ endPage = this.lastPage;
+ startPage = endPage - this.props.paginationSize + 1;
+ }
+
+ if (startPage !== this.props.pageStartIndex && this.totalPages > this.props.paginationSize && this.props.withFirstAndLast) {
+ pages = [this.props.firstPage, this.props.prePage];
+ } else if (this.totalPages > 1 || this.props.alwaysShowAllBtns) {
+ pages = [this.props.prePage];
+ } else {
+ pages = [];
+ }
+
+ for (var i = startPage; i <= endPage; i++) {
+ if (i >= this.props.pageStartIndex) pages.push(i);
+ }
+
+ if (endPage <= this.lastPage && pages.length > 1) {
+ pages.push(this.props.nextPage);
+ }
+ if (endPage !== this.lastPage && this.props.withFirstAndLast) {
+ pages.push(this.props.lastPage);
+ }
+
+ return pages;
+ }
+ }]);
+
+ return PaginationList;
+}(_react.Component);
+
+PaginationList.propTypes = {
+ currPage: _propTypes2.default.number,
+ sizePerPage: _propTypes2.default.number,
+ dataSize: _propTypes2.default.number,
+ changePage: _propTypes2.default.func,
+ sizePerPageList: _propTypes2.default.array,
+ paginationShowsTotal: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.func]),
+ paginationSize: _propTypes2.default.number,
+ onSizePerPageList: _propTypes2.default.func,
+ prePage: _propTypes2.default.any,
+ nextPage: _propTypes2.default.any,
+ firstPage: _propTypes2.default.any,
+ lastPage: _propTypes2.default.any,
+ pageStartIndex: _propTypes2.default.number,
+ hideSizePerPage: _propTypes2.default.bool,
+ alwaysShowAllBtns: _propTypes2.default.bool,
+ withFirstAndLast: _propTypes2.default.bool,
+ sizePerPageDropDown: _propTypes2.default.func,
+ paginationPanel: _propTypes2.default.func,
+ prePageTitle: _propTypes2.default.string,
+ nextPageTitle: _propTypes2.default.string,
+ firstPageTitle: _propTypes2.default.string,
+ lastPageTitle: _propTypes2.default.string,
+ hidePageListOnlyOnePage: _propTypes2.default.bool,
+ keepSizePerPageState: _propTypes2.default.bool
+};
+
+PaginationList.defaultProps = {
+ sizePerPage: _Const2.default.SIZE_PER_PAGE,
+ pageStartIndex: _Const2.default.PAGE_START_INDEX
+};
+
+var _default = PaginationList;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(PaginationList, 'PaginationList', '/home/nogi/nogi/forks/react-bootstrap-table/src/pagination/PaginationList.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/pagination/PaginationList.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/pagination/SizePerPageDropDown.js b/lib/pagination/SizePerPageDropDown.js
new file mode 100644
index 000000000..3383c4603
--- /dev/null
+++ b/lib/pagination/SizePerPageDropDown.js
@@ -0,0 +1,130 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var sizePerPageDefaultClass = 'react-bs-table-sizePerPage-dropdown';
+
+var SizePerPageDropDown = function (_Component) {
+ _inherits(SizePerPageDropDown, _Component);
+
+ function SizePerPageDropDown() {
+ _classCallCheck(this, SizePerPageDropDown);
+
+ return _possibleConstructorReturn(this, (SizePerPageDropDown.__proto__ || Object.getPrototypeOf(SizePerPageDropDown)).apply(this, arguments));
+ }
+
+ _createClass(SizePerPageDropDown, [{
+ key: 'render',
+ value: function render() {
+ var _props = this.props,
+ open = _props.open,
+ hidden = _props.hidden,
+ onClick = _props.onClick,
+ onBlur = _props.onBlur,
+ options = _props.options,
+ className = _props.className,
+ variation = _props.variation,
+ btnContextual = _props.btnContextual,
+ isBootstrap4 = _props.isBootstrap4,
+ currSizePerPage = _props.currSizePerPage;
+
+
+ if (hidden) return null;
+
+ var openClass = open ? 'open show' : '';
+
+ var renderOptions = function renderOptions() {
+ var attrs = {
+ className: 'dropdown-menu ' + openClass,
+ role: 'menu',
+ 'aria-labelledby': 'pageDropDown'
+ };
+ var type = isBootstrap4 ? 'div' : 'ul';
+
+ return _react2.default.createElement(type, attrs, options);
+ };
+
+ return _react2.default.createElement(
+ 'span',
+ {
+ className: variation + ' ' + openClass + ' ' + className + ' ' + sizePerPageDefaultClass },
+ _react2.default.createElement(
+ 'button',
+ { className: 'btn ' + btnContextual + ' dropdown-toggle',
+ id: 'pageDropDown', 'data-toggle': 'dropdown',
+ 'aria-expanded': open,
+ 'aria-haspopup': !open,
+ onClick: onClick,
+ onBlur: onBlur },
+ currSizePerPage,
+ _react2.default.createElement(
+ 'span',
+ null,
+ ' ',
+ _react2.default.createElement('span', { className: 'caret' })
+ )
+ ),
+ renderOptions()
+ );
+ }
+ }]);
+
+ return SizePerPageDropDown;
+}(_react.Component);
+
+SizePerPageDropDown.propTypes = {
+ open: _propTypes2.default.bool,
+ hidden: _propTypes2.default.bool,
+ btnContextual: _propTypes2.default.string,
+ currSizePerPage: _propTypes2.default.string,
+ options: _propTypes2.default.array,
+ variation: _propTypes2.default.oneOf(['dropdown', 'dropup']),
+ className: _propTypes2.default.string,
+ onClick: _propTypes2.default.func,
+ onBlur: _propTypes2.default.func
+};
+SizePerPageDropDown.defaultProps = {
+ open: false,
+ hidden: false,
+ btnContextual: 'btn-default btn-secondary',
+ variation: 'dropdown',
+ className: ''
+};
+
+var _default = SizePerPageDropDown;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(sizePerPageDefaultClass, 'sizePerPageDefaultClass', '/home/nogi/nogi/forks/react-bootstrap-table/src/pagination/SizePerPageDropDown.js');
+
+ __REACT_HOT_LOADER__.register(SizePerPageDropDown, 'SizePerPageDropDown', '/home/nogi/nogi/forks/react-bootstrap-table/src/pagination/SizePerPageDropDown.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/pagination/SizePerPageDropDown.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/store/TableDataStore.js b/lib/store/TableDataStore.js
new file mode 100644
index 000000000..6652039e8
--- /dev/null
+++ b/lib/store/TableDataStore.js
@@ -0,0 +1,871 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.TableDataStore = undefined;
+
+var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /* eslint no-nested-ternary: 0 */
+/* eslint guard-for-in: 0 */
+/* eslint no-console: 0 */
+/* eslint eqeqeq: 0 */
+/* eslint one-var: 0 */
+
+
+var _Const = require('../Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+var TableDataStore = function () {
+ function TableDataStore(data) {
+ var _this = this;
+
+ _classCallCheck(this, TableDataStore);
+
+ this.isValidKey = function () {
+ return _this.__isValidKey__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ this.data = data;
+ this.filteredData = null;
+ this.isOnFilter = false;
+ this.filterObj = null;
+ this.searchText = null;
+ this.sortList = [];
+ this.pageObj = {};
+ this.selected = [];
+ this.showOnlySelected = false;
+ }
+
+ _createClass(TableDataStore, [{
+ key: '__isValidKey__REACT_HOT_LOADER__',
+ value: function __isValidKey__REACT_HOT_LOADER__() {
+ return this.__isValidKey__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: 'setProps',
+ value: function setProps(props) {
+ this.keyField = props.keyField;
+ this.enablePagination = props.isPagination;
+ this.colInfos = props.colInfos;
+ this.remote = props.remote;
+ this.multiColumnSearch = props.multiColumnSearch;
+ // default behaviour if strictSearch prop is not provided: !multiColumnSearch
+ this.strictSearch = typeof props.strictSearch === 'undefined' ? !props.multiColumnSearch : props.strictSearch;
+ this.multiColumnSort = props.multiColumnSort;
+ }
+ }, {
+ key: 'clean',
+ value: function clean() {
+ this.filteredData = null;
+ this.isOnFilter = false;
+ this.filterObj = null;
+ this.searchText = null;
+ this.sortList = [];
+ this.pageObj = {};
+ this.selected = [];
+ }
+ }, {
+ key: 'isSearching',
+ value: function isSearching() {
+ return this.searchText !== null;
+ }
+ }, {
+ key: 'isFiltering',
+ value: function isFiltering() {
+ return this.filterObj !== null;
+ }
+ }, {
+ key: 'setData',
+ value: function setData(data) {
+ this.data = data;
+ if (this.remote) {
+ return;
+ }
+
+ this._refresh(true);
+ }
+ }, {
+ key: 'getColInfos',
+ value: function getColInfos() {
+ return this.colInfos;
+ }
+ }, {
+ key: 'getSortInfo',
+ value: function getSortInfo() {
+ return this.sortList;
+ }
+ }, {
+ key: 'setSortInfo',
+ value: function setSortInfo(order, sortField) {
+ if ((typeof order === 'undefined' ? 'undefined' : _typeof(order)) !== (typeof sortField === 'undefined' ? 'undefined' : _typeof(sortField))) {
+ throw new Error('The type of sort field and order should be both with String or Array');
+ }
+ if (Array.isArray(order) && Array.isArray(sortField)) {
+ if (order.length !== sortField.length) {
+ throw new Error('The length of sort fields and orders should be equivalent');
+ }
+ order = order.slice().reverse();
+ this.sortList = sortField.slice().reverse().map(function (field, i) {
+ return {
+ order: order[i],
+ sortField: field
+ };
+ });
+ this.sortList = this.sortList.slice(0, this.multiColumnSort);
+ } else {
+ var sortObj = {
+ order: order,
+ sortField: sortField
+ };
+
+ if (this.multiColumnSort > 1) {
+ var i = this.sortList.length - 1;
+ var sortFieldInHistory = false;
+
+ for (; i >= 0; i--) {
+ if (this.sortList[i].sortField === sortField) {
+ sortFieldInHistory = true;
+ break;
+ }
+ }
+
+ if (sortFieldInHistory) {
+ if (i > 0) {
+ this.sortList = this.sortList.slice(0, i);
+ } else {
+ this.sortList = this.sortList.slice(1);
+ }
+ }
+
+ this.sortList.unshift(sortObj);
+ this.sortList = this.sortList.slice(0, this.multiColumnSort);
+ } else {
+ this.sortList = [sortObj];
+ }
+ }
+ }
+ }, {
+ key: 'cleanSortInfo',
+ value: function cleanSortInfo() {
+ this.sortList = [];
+ }
+ }, {
+ key: 'setSelectedRowKey',
+ value: function setSelectedRowKey(selectedRowKeys) {
+ this.selected = selectedRowKeys;
+ }
+ }, {
+ key: 'getRowByKey',
+ value: function getRowByKey(keys) {
+ var _this2 = this;
+
+ // Bad Performance #1164
+ // return keys.map(key => {
+ // const result = this.data.filter(d => d[this.keyField] === key);
+ // if (result.length !== 0) return result[0];
+ // });
+ var result = [];
+ if (!keys || keys.length === 0) {
+ return result;
+ }
+
+ var _loop = function _loop(i) {
+ var d = _this2.data[i];
+ if (keys.indexOf(d[_this2.keyField]) > -1) {
+ keys = keys.filter(function (k) {
+ return k !== d[_this2.keyField];
+ });
+ result.push(d);
+ }
+ };
+
+ for (var i = 0; i < this.data.length; i++) {
+ _loop(i);
+ }
+ return result;
+ }
+ }, {
+ key: 'getSelectedRowKeys',
+ value: function getSelectedRowKeys() {
+ return this.selected;
+ }
+ }, {
+ key: 'getCurrentDisplayData',
+ value: function getCurrentDisplayData() {
+ if (this.isOnFilter) return this.filteredData;else return this.data;
+ }
+ }, {
+ key: '_refresh',
+ value: function _refresh(skipSorting) {
+ if (this.isOnFilter) {
+ if (this.filterObj !== null) this.filter(this.filterObj);
+ if (this.searchText !== null) this.search(this.searchText);
+ }
+ if (!skipSorting && this.sortList.length > 0) {
+ this.sort();
+ }
+ }
+ }, {
+ key: 'ignoreNonSelected',
+ value: function ignoreNonSelected() {
+ var _this3 = this;
+
+ this.showOnlySelected = !this.showOnlySelected;
+ if (this.showOnlySelected) {
+ this.isOnFilter = true;
+ this.filteredData = this.data.filter(function (row) {
+ var result = _this3.selected.find(function (x) {
+ return row[_this3.keyField] === x;
+ });
+ return typeof result !== 'undefined' ? true : false;
+ });
+ } else {
+ this.isOnFilter = false;
+ }
+ }
+ }, {
+ key: 'sort',
+ value: function sort() {
+ var currentDisplayData = this.getCurrentDisplayData();
+
+ currentDisplayData = this._sort(currentDisplayData);
+
+ return this;
+ }
+ }, {
+ key: 'page',
+ value: function page(_page, sizePerPage) {
+ this.pageObj.end = _page * sizePerPage - 1;
+ this.pageObj.start = this.pageObj.end - (sizePerPage - 1);
+ return this;
+ }
+ }, {
+ key: 'edit',
+ value: function edit(newVal, rowIndex, fieldName) {
+ var currentDisplayData = this.getCurrentDisplayData();
+ var rowKeyCache = void 0;
+ if (!this.enablePagination) {
+ currentDisplayData[rowIndex][fieldName] = newVal;
+ rowKeyCache = currentDisplayData[rowIndex][this.keyField];
+ } else {
+ currentDisplayData[this.pageObj.start + rowIndex][fieldName] = newVal;
+ rowKeyCache = currentDisplayData[this.pageObj.start + rowIndex][this.keyField];
+ }
+ if (this.isOnFilter) {
+ this.data.forEach(function (row) {
+ if (row[this.keyField] === rowKeyCache) {
+ row[fieldName] = newVal;
+ }
+ }, this);
+ if (this.filterObj !== null) this.filter(this.filterObj);
+ if (this.searchText !== null) this.search(this.searchText);
+ }
+ return this;
+ }
+ }, {
+ key: 'addAtBegin',
+ value: function addAtBegin(newObj) {
+ if (!newObj[this.keyField] || newObj[this.keyField].toString() === '') {
+ throw new Error(this.keyField + ' can\'t be empty value.');
+ }
+ var currentDisplayData = this.getCurrentDisplayData();
+ currentDisplayData.forEach(function (row) {
+ if (row[this.keyField].toString() === newObj[this.keyField].toString()) {
+ throw new Error(this.keyField + ' ' + newObj[this.keyField] + ' already exists');
+ }
+ }, this);
+ currentDisplayData.unshift(newObj);
+ if (this.isOnFilter) {
+ this.data.unshift(newObj);
+ }
+ this._refresh(false);
+ }
+ }, {
+ key: 'add',
+ value: function add(newObj) {
+ var e = this.isValidKey(newObj[this.keyField]);
+ if (e) throw new Error(e);
+
+ var currentDisplayData = this.getCurrentDisplayData();
+ currentDisplayData.push(newObj);
+ if (this.isOnFilter) {
+ this.data.push(newObj);
+ }
+ this._refresh(false);
+ }
+ }, {
+ key: '__isValidKey__REACT_HOT_LOADER__',
+ value: function __isValidKey__REACT_HOT_LOADER__(key) {
+ var _this4 = this;
+
+ if (key === null || key === undefined || key.toString() === '') {
+ return this.keyField + ' can\'t be empty value.';
+ }
+ var currentDisplayData = this.getCurrentDisplayData();
+ var exist = currentDisplayData.find(function (row) {
+ return row[_this4.keyField].toString() === key.toString();
+ });
+ if (exist) return this.keyField + ' ' + key + ' already exists';
+ }
+ }, {
+ key: 'remove',
+ value: function remove(rowKey) {
+ var _this5 = this;
+
+ var currentDisplayData = this.getCurrentDisplayData();
+ var result = currentDisplayData.filter(function (row) {
+ return rowKey.indexOf(row[_this5.keyField]) === -1;
+ });
+
+ if (this.isOnFilter) {
+ this.data = this.data.filter(function (row) {
+ return rowKey.indexOf(row[_this5.keyField]) === -1;
+ });
+ this.filteredData = result;
+ } else {
+ this.data = result;
+ }
+ }
+ }, {
+ key: 'filter',
+ value: function filter(filterObj) {
+ if (Object.keys(filterObj).length === 0) {
+ this.filteredData = null;
+ this.isOnFilter = false;
+ this.filterObj = null;
+ if (this.searchText) this._search(this.data);
+ } else {
+ var source = this.data;
+ this.filterObj = filterObj;
+ if (this.searchText) {
+ this._search(source);
+ source = this.filteredData;
+ }
+ this._filter(source);
+ }
+ }
+ }, {
+ key: 'filterNumber',
+ value: function filterNumber(targetVal, filterVal, comparator) {
+ var valid = true;
+ switch (comparator) {
+ case '=':
+ {
+ if (targetVal != filterVal) {
+ valid = false;
+ }
+ break;
+ }
+ case '>':
+ {
+ if (targetVal <= filterVal) {
+ valid = false;
+ }
+ break;
+ }
+ case '>=':
+ {
+ if (targetVal < filterVal) {
+ valid = false;
+ }
+ break;
+ }
+ case '<':
+ {
+ if (targetVal >= filterVal) {
+ valid = false;
+ }
+ break;
+ }
+ case '<=':
+ {
+ if (targetVal > filterVal) {
+ valid = false;
+ }
+ break;
+ }
+ case '!=':
+ {
+ if (targetVal == filterVal) {
+ valid = false;
+ }
+ break;
+ }
+ default:
+ {
+ console.error('Number comparator provided is not supported');
+ break;
+ }
+ }
+ return valid;
+ }
+ }, {
+ key: 'filterDate',
+ value: function filterDate(targetVal, filterVal, comparator) {
+ if (!targetVal) return false;
+
+ var filterDate = filterVal.getDate();
+ var filterMonth = filterVal.getMonth();
+ var filterYear = filterVal.getFullYear();
+
+ if ((typeof targetVal === 'undefined' ? 'undefined' : _typeof(targetVal)) !== 'object') {
+ targetVal = new Date(targetVal);
+ }
+
+ var targetDate = targetVal.getDate();
+ var targetMonth = targetVal.getMonth();
+ var targetYear = targetVal.getFullYear();
+
+ var valid = true;
+ switch (comparator) {
+ case '=':
+ {
+ if (filterDate !== targetDate || filterMonth !== targetMonth || filterYear !== targetYear) {
+ valid = false;
+ }
+ break;
+ }
+ case '>':
+ {
+ if (targetVal <= filterVal) {
+ valid = false;
+ }
+ break;
+ }
+ case '>=':
+ {
+ if (targetYear < filterYear) {
+ valid = false;
+ } else if (targetYear === filterYear && targetMonth < filterMonth) {
+ valid = false;
+ } else if (targetYear === filterYear && targetMonth === filterMonth && targetDate < filterDate) {
+ valid = false;
+ }
+ break;
+ }
+ case '<':
+ {
+ if (targetVal >= filterVal) {
+ valid = false;
+ }
+ break;
+ }
+ case '<=':
+ {
+ if (targetYear > filterYear) {
+ valid = false;
+ } else if (targetYear === filterYear && targetMonth > filterMonth) {
+ valid = false;
+ } else if (targetYear === filterYear && targetMonth === filterMonth && targetDate > filterDate) {
+ valid = false;
+ }
+ break;
+ }
+ case '!=':
+ {
+ if (filterDate === targetDate && filterMonth === targetMonth && filterYear === targetYear) {
+ valid = false;
+ }
+ break;
+ }
+ default:
+ {
+ console.error('Date comparator provided is not supported');
+ break;
+ }
+ }
+ return valid;
+ }
+ }, {
+ key: 'filterRegex',
+ value: function filterRegex(targetVal, filterVal) {
+ try {
+ return new RegExp(filterVal, 'i').test(targetVal);
+ } catch (e) {
+ return true;
+ }
+ }
+ }, {
+ key: 'filterCustom',
+ value: function filterCustom(targetVal, filterVal, callbackInfo, cond) {
+ if (callbackInfo !== null && (typeof callbackInfo === 'undefined' ? 'undefined' : _typeof(callbackInfo)) === 'object') {
+ return callbackInfo.callback(targetVal, callbackInfo.callbackParameters);
+ }
+
+ return this.filterText(targetVal, filterVal, cond);
+ }
+ }, {
+ key: 'filterText',
+ value: function filterText() {
+ var targetVal = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
+ var filterVal = arguments[1];
+ var cond = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : _Const2.default.FILTER_COND_LIKE;
+
+ targetVal = targetVal === null ? '' : targetVal.toString();
+ filterVal = filterVal.toString();
+ if (cond === _Const2.default.FILTER_COND_EQ) {
+ return targetVal === filterVal;
+ } else {
+ targetVal = targetVal.toLowerCase();
+ filterVal = filterVal.toLowerCase();
+ return !(targetVal.indexOf(filterVal) === -1);
+ }
+ }
+
+ /**
+ * Filter if targetVal is contained in filterVal.
+ */
+
+ }, {
+ key: 'filterArray',
+ value: function filterArray(targetVal, filterVal) {
+ // case insensitive
+ return filterVal.indexOf(targetVal) > -1;
+ }
+
+ /* General search function
+ * It will search for the text if the input includes that text;
+ */
+
+ }, {
+ key: 'search',
+ value: function search(searchText) {
+ if (searchText.trim() === '') {
+ this.filteredData = null;
+ this.isOnFilter = false;
+ this.searchText = null;
+ if (this.filterObj) this._filter(this.data);
+ } else {
+ var source = this.data;
+ this.searchText = searchText;
+ if (this.filterObj) {
+ this._filter(source);
+ source = this.filteredData;
+ }
+ this._search(source);
+ }
+ }
+ }, {
+ key: '_filter',
+ value: function _filter(source) {
+ var _this6 = this;
+
+ var filterObj = this.filterObj;
+ this.filteredData = source.filter(function (row, r) {
+ var valid = true;
+ var filterVal = void 0;
+ for (var key in filterObj) {
+ var targetVal = row[key];
+ if (targetVal === null || targetVal === undefined) {
+ targetVal = '';
+ }
+
+ switch (filterObj[key].type) {
+ case _Const2.default.FILTER_TYPE.NUMBER:
+ {
+ filterVal = filterObj[key].value.number;
+ break;
+ }
+ case _Const2.default.FILTER_TYPE.CUSTOM:
+ {
+ filterVal = _typeof(filterObj[key].value) === 'object' ? undefined : typeof filterObj[key].value === 'string' ? filterObj[key].value.toLowerCase() : filterObj[key].value;
+ break;
+ }
+ case _Const2.default.FILTER_TYPE.DATE:
+ {
+ filterVal = filterObj[key].value.date;
+ break;
+ }
+ case _Const2.default.FILTER_TYPE.REGEX:
+ {
+ filterVal = filterObj[key].value;
+ break;
+ }
+ case _Const2.default.FILTER_TYPE.ARRAY:
+ {
+ filterVal = filterObj[key].value;
+ if (!Array.isArray(filterVal)) {
+ throw new Error('Value must be an Array');
+ }
+ break;
+ }
+ default:
+ {
+ filterVal = filterObj[key].value;
+ if (filterVal === undefined) {
+ // Support old filter
+ filterVal = filterObj[key];
+ }
+ break;
+ }
+ }
+ var format = void 0,
+ filterFormatted = void 0,
+ formatExtraData = void 0,
+ filterValue = void 0;
+ if (_this6.colInfos[key]) {
+ format = _this6.colInfos[key].format;
+ filterFormatted = _this6.colInfos[key].filterFormatted;
+ formatExtraData = _this6.colInfos[key].formatExtraData;
+ filterValue = _this6.colInfos[key].filterValue;
+ if (filterFormatted && format) {
+ targetVal = format(row[key], row, formatExtraData, r);
+ } else if (filterValue) {
+ targetVal = filterValue(row[key], row);
+ }
+ }
+
+ switch (filterObj[key].type) {
+ case _Const2.default.FILTER_TYPE.NUMBER:
+ {
+ valid = _this6.filterNumber(targetVal, filterVal, filterObj[key].value.comparator);
+ break;
+ }
+ case _Const2.default.FILTER_TYPE.DATE:
+ {
+ valid = _this6.filterDate(targetVal, filterVal, filterObj[key].value.comparator);
+ break;
+ }
+ case _Const2.default.FILTER_TYPE.REGEX:
+ {
+ valid = _this6.filterRegex(targetVal, filterVal);
+ break;
+ }
+ case _Const2.default.FILTER_TYPE.CUSTOM:
+ {
+ var cond = filterObj[key].props ? filterObj[key].props.cond : _Const2.default.FILTER_COND_LIKE;
+ valid = _this6.filterCustom(targetVal, filterVal, filterObj[key].value, cond);
+ break;
+ }
+ case _Const2.default.FILTER_TYPE.ARRAY:
+ {
+ valid = _this6.filterArray(targetVal, filterVal);
+ break;
+ }
+ default:
+ {
+ if (filterObj[key].type === _Const2.default.FILTER_TYPE.SELECT && filterFormatted && filterFormatted && format) {
+ filterVal = format(filterVal, row, formatExtraData, r);
+ }
+ var _cond = filterObj[key].props ? filterObj[key].props.cond : _Const2.default.FILTER_COND_LIKE;
+ valid = _this6.filterText(targetVal, filterVal, _cond);
+ break;
+ }
+ }
+ if (!valid) {
+ break;
+ }
+ }
+ return valid;
+ });
+ this.isOnFilter = true;
+ }
+
+ /*
+ * Four different sort modes, all case insensitive:
+ * (1) strictSearch && !multiColumnSearch
+ * search text must be contained as provided in a single column
+ * (2) strictSearch && multiColumnSearch
+ * conjunction (AND combination) of whitespace separated terms over multiple columns
+ * (3) !strictSearch && !multiColumnSearch
+ * conjunction (AND combination) of whitespace separated terms in a single column
+ * (4) !strictSearch && multiColumnSearch
+ * any of the whitespace separated terms must be contained in any column
+ */
+
+ }, {
+ key: '_search',
+ value: function _search(source) {
+ var _this7 = this;
+
+ var searchTextArray = void 0;
+ if (this.multiColumnSearch || !this.strictSearch) {
+ // ignore leading and trailing whitespaces
+ searchTextArray = this.searchText.trim().toLowerCase().split(/\s+/);
+ } else {
+ searchTextArray = [this.searchText.toLowerCase()];
+ }
+ var searchTermCount = searchTextArray.length;
+ var multipleTerms = searchTermCount > 1;
+ var nonStrictMultiCol = multipleTerms && !this.strictSearch && this.multiColumnSearch;
+ var nonStrictSingleCol = multipleTerms && !this.strictSearch && !this.multiColumnSearch;
+ this.filteredData = source.filter(function (row, r) {
+ var keys = Object.keys(row);
+ // only clone array if necessary
+ var searchTerms = multipleTerms ? searchTextArray.slice() : searchTextArray;
+ // for loops are ugly, but performance matters here.
+ // And you cant break from a forEach.
+ // http://jsperf.com/for-vs-foreach/66
+ for (var i = 0, keysLength = keys.length; i < keysLength; i++) {
+ var key = keys[i];
+ var colInfo = _this7.colInfos[key];
+ if (colInfo && colInfo.searchable) {
+ var format = colInfo.format,
+ filterFormatted = colInfo.filterFormatted,
+ filterValue = colInfo.filterValue,
+ formatExtraData = colInfo.formatExtraData;
+
+ var targetVal = void 0;
+ if (filterFormatted && format) {
+ targetVal = format(row[key], row, formatExtraData, r);
+ } else if (filterValue) {
+ targetVal = filterValue(row[key], row);
+ } else {
+ targetVal = row[key];
+ }
+ if (targetVal !== null && typeof targetVal !== 'undefined') {
+ targetVal = targetVal.toString().toLowerCase();
+ if (nonStrictSingleCol && searchTermCount > searchTerms.length) {
+ // reset search terms for single column search
+ searchTerms = searchTextArray.slice();
+ }
+ for (var j = searchTerms.length - 1; j > -1; j--) {
+ if (targetVal.indexOf(searchTerms[j]) !== -1) {
+ if (nonStrictMultiCol || searchTerms.length === 1) {
+ // match found: the last or only one
+ return true;
+ }
+ // match found: but there are more search terms to check for
+ searchTerms.splice(j, 1);
+ } else if (!_this7.multiColumnSearch) {
+ // one of the search terms was not found in this column
+ break;
+ }
+ }
+ }
+ }
+ }
+ return false;
+ });
+ this.isOnFilter = true;
+ }
+ }, {
+ key: '_sort',
+ value: function _sort(arr) {
+ var _this8 = this;
+
+ if (this.sortList.length === 0 || typeof this.sortList[0] === 'undefined') {
+ return arr;
+ }
+
+ arr.sort(function (a, b) {
+ var result = 0;
+
+ for (var i = 0; i < _this8.sortList.length; i++) {
+ var sortDetails = _this8.sortList[i];
+ var isDesc = sortDetails.order.toLowerCase() === _Const2.default.SORT_DESC;
+
+ var _colInfos$sortDetails = _this8.colInfos[sortDetails.sortField],
+ sortFunc = _colInfos$sortDetails.sortFunc,
+ sortFuncExtraData = _colInfos$sortDetails.sortFuncExtraData;
+
+
+ if (sortFunc) {
+ result = sortFunc(a, b, sortDetails.order, sortDetails.sortField, sortFuncExtraData);
+ } else {
+ var valueA = a[sortDetails.sortField] == null ? '' : a[sortDetails.sortField];
+ var valueB = b[sortDetails.sortField] == null ? '' : b[sortDetails.sortField];
+
+ if (isDesc) {
+ if (typeof valueB === 'string') {
+ result = valueB.localeCompare(valueA);
+ } else {
+ result = valueA > valueB ? -1 : valueA < valueB ? 1 : 0;
+ }
+ } else {
+ if (typeof valueA === 'string') {
+ result = valueA.localeCompare(valueB);
+ } else {
+ result = valueA < valueB ? -1 : valueA > valueB ? 1 : 0;
+ }
+ }
+ }
+
+ if (result !== 0) {
+ return result;
+ }
+ }
+
+ return result;
+ });
+
+ return arr;
+ }
+ }, {
+ key: 'getDataIgnoringPagination',
+ value: function getDataIgnoringPagination() {
+ return this.getCurrentDisplayData();
+ }
+ }, {
+ key: 'get',
+ value: function get() {
+ var _data = this.getCurrentDisplayData();
+
+ if (_data.length === 0) return _data;
+
+ var remote = typeof this.remote === 'function' ? this.remote(_Const2.default.REMOTE)[_Const2.default.REMOTE_PAGE] : this.remote;
+
+ if (remote || !this.enablePagination) {
+ return _data;
+ } else {
+ var result = [];
+ for (var i = this.pageObj.start; i <= this.pageObj.end; i++) {
+ result.push(_data[i]);
+ if (i + 1 === _data.length) break;
+ }
+ return result;
+ }
+ }
+ }, {
+ key: 'getKeyField',
+ value: function getKeyField() {
+ return this.keyField;
+ }
+ }, {
+ key: 'getDataNum',
+ value: function getDataNum() {
+ return this.getCurrentDisplayData().length;
+ }
+ }, {
+ key: 'isChangedPage',
+ value: function isChangedPage() {
+ return this.pageObj.start && this.pageObj.end ? true : false;
+ }
+ }, {
+ key: 'isEmpty',
+ value: function isEmpty() {
+ return this.data.length === 0 || this.data === null || this.data === undefined;
+ }
+ }, {
+ key: 'getAllRowkey',
+ value: function getAllRowkey() {
+ var _this9 = this;
+
+ return this.data.map(function (row) {
+ return row[_this9.keyField];
+ });
+ }
+ }]);
+
+ return TableDataStore;
+}();
+
+exports.TableDataStore = TableDataStore;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(TableDataStore, 'TableDataStore', '/home/nogi/nogi/forks/react-bootstrap-table/src/store/TableDataStore.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/toolbar/ButtonGroup.js b/lib/toolbar/ButtonGroup.js
new file mode 100644
index 000000000..29cfa4757
--- /dev/null
+++ b/lib/toolbar/ButtonGroup.js
@@ -0,0 +1,81 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var ButtonGroup = function (_Component) {
+ _inherits(ButtonGroup, _Component);
+
+ function ButtonGroup() {
+ _classCallCheck(this, ButtonGroup);
+
+ return _possibleConstructorReturn(this, (ButtonGroup.__proto__ || Object.getPrototypeOf(ButtonGroup)).apply(this, arguments));
+ }
+
+ _createClass(ButtonGroup, [{
+ key: 'render',
+ value: function render() {
+ var _props = this.props,
+ className = _props.className,
+ sizeClass = _props.sizeClass,
+ children = _props.children,
+ rest = _objectWithoutProperties(_props, ['className', 'sizeClass', 'children']);
+
+ return _react2.default.createElement(
+ 'div',
+ _extends({ className: 'btn-group ' + sizeClass + ' ' + className, role: 'group' }, rest),
+ children
+ );
+ }
+ }]);
+
+ return ButtonGroup;
+}(_react.Component);
+
+ButtonGroup.propTypes = {
+ sizeClass: _propTypes2.default.string,
+ className: _propTypes2.default.string
+};
+ButtonGroup.defaultProps = {
+ sizeClass: 'btn-group-sm',
+ className: ''
+};
+
+var _default = ButtonGroup;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(ButtonGroup, 'ButtonGroup', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ButtonGroup.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ButtonGroup.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/toolbar/ClearSearchButton.js b/lib/toolbar/ClearSearchButton.js
new file mode 100644
index 000000000..c74793a19
--- /dev/null
+++ b/lib/toolbar/ClearSearchButton.js
@@ -0,0 +1,100 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var clearBtnDefaultClass = 'react-bs-table-search-clear-btn';
+
+var ClearSearchButton = function (_Component) {
+ _inherits(ClearSearchButton, _Component);
+
+ function ClearSearchButton() {
+ _classCallCheck(this, ClearSearchButton);
+
+ return _possibleConstructorReturn(this, (ClearSearchButton.__proto__ || Object.getPrototypeOf(ClearSearchButton)).apply(this, arguments));
+ }
+
+ _createClass(ClearSearchButton, [{
+ key: 'render',
+ value: function render() {
+ var _props = this.props,
+ btnContextual = _props.btnContextual,
+ className = _props.className,
+ onClick = _props.onClick,
+ btnText = _props.btnText,
+ children = _props.children,
+ rest = _objectWithoutProperties(_props, ['btnContextual', 'className', 'onClick', 'btnText', 'children']);
+
+ var content = children || _react2.default.createElement(
+ 'span',
+ null,
+ btnText
+ );
+ return _react2.default.createElement(
+ 'button',
+ _extends({
+ className: 'btn ' + btnContextual + ' ' + className + ' ' + clearBtnDefaultClass,
+ type: 'button',
+ onClick: onClick
+ }, rest),
+ content
+ );
+ }
+ }]);
+
+ return ClearSearchButton;
+}(_react.Component);
+
+ClearSearchButton.propTypes = {
+ btnContextual: _propTypes2.default.string,
+ className: _propTypes2.default.string,
+ btnText: _propTypes2.default.string,
+ onClick: _propTypes2.default.func
+};
+ClearSearchButton.defaultProps = {
+ btnContextual: 'btn-default btn-secondary',
+ className: '',
+ btnText: 'Clear',
+ onClick: undefined
+};
+
+var _default = ClearSearchButton;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(clearBtnDefaultClass, 'clearBtnDefaultClass', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ClearSearchButton.js');
+
+ __REACT_HOT_LOADER__.register(ClearSearchButton, 'ClearSearchButton', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ClearSearchButton.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ClearSearchButton.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/toolbar/DeleteButton.js b/lib/toolbar/DeleteButton.js
new file mode 100644
index 000000000..57b2a7ca3
--- /dev/null
+++ b/lib/toolbar/DeleteButton.js
@@ -0,0 +1,108 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _Const = require('../Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var deleteBtnDefaultClass = 'react-bs-table-del-btn';
+
+var DeleteButton = function (_Component) {
+ _inherits(DeleteButton, _Component);
+
+ function DeleteButton() {
+ _classCallCheck(this, DeleteButton);
+
+ return _possibleConstructorReturn(this, (DeleteButton.__proto__ || Object.getPrototypeOf(DeleteButton)).apply(this, arguments));
+ }
+
+ _createClass(DeleteButton, [{
+ key: 'render',
+ value: function render() {
+ var _props = this.props,
+ btnContextual = _props.btnContextual,
+ className = _props.className,
+ onClick = _props.onClick,
+ btnGlyphicon = _props.btnGlyphicon,
+ btnText = _props.btnText,
+ children = _props.children,
+ rest = _objectWithoutProperties(_props, ['btnContextual', 'className', 'onClick', 'btnGlyphicon', 'btnText', 'children']);
+
+ var content = children || _react2.default.createElement(
+ 'span',
+ null,
+ _react2.default.createElement('i', { className: 'fa glyphicon ' + btnGlyphicon }),
+ ' ',
+ btnText
+ );
+ return _react2.default.createElement(
+ 'button',
+ _extends({ type: 'button',
+ className: 'btn ' + btnContextual + ' ' + deleteBtnDefaultClass + ' ' + className,
+ onClick: onClick
+ }, rest),
+ content
+ );
+ }
+ }]);
+
+ return DeleteButton;
+}(_react.Component);
+
+DeleteButton.propTypes = {
+ btnText: _propTypes2.default.string,
+ btnContextual: _propTypes2.default.string,
+ className: _propTypes2.default.string,
+ onClick: _propTypes2.default.func,
+ btnGlyphicon: _propTypes2.default.string
+};
+DeleteButton.defaultProps = {
+ btnText: _Const2.default.DELETE_BTN_TEXT,
+ btnContextual: 'btn-warning',
+ className: '',
+ onClick: undefined,
+ btnGlyphicon: 'glyphicon-trash fa-trash'
+};
+
+var _default = DeleteButton;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(deleteBtnDefaultClass, 'deleteBtnDefaultClass', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/DeleteButton.js');
+
+ __REACT_HOT_LOADER__.register(DeleteButton, 'DeleteButton', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/DeleteButton.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/DeleteButton.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/toolbar/ExportCSVButton.js b/lib/toolbar/ExportCSVButton.js
new file mode 100644
index 000000000..c63224110
--- /dev/null
+++ b/lib/toolbar/ExportCSVButton.js
@@ -0,0 +1,108 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _Const = require('../Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var exportCsvBtnDefaultClass = 'react-bs-table-csv-btn';
+
+var ExportCSVButton = function (_Component) {
+ _inherits(ExportCSVButton, _Component);
+
+ function ExportCSVButton() {
+ _classCallCheck(this, ExportCSVButton);
+
+ return _possibleConstructorReturn(this, (ExportCSVButton.__proto__ || Object.getPrototypeOf(ExportCSVButton)).apply(this, arguments));
+ }
+
+ _createClass(ExportCSVButton, [{
+ key: 'render',
+ value: function render() {
+ var _props = this.props,
+ btnContextual = _props.btnContextual,
+ className = _props.className,
+ onClick = _props.onClick,
+ btnGlyphicon = _props.btnGlyphicon,
+ btnText = _props.btnText,
+ children = _props.children,
+ rest = _objectWithoutProperties(_props, ['btnContextual', 'className', 'onClick', 'btnGlyphicon', 'btnText', 'children']);
+
+ var content = children || _react2.default.createElement(
+ 'span',
+ null,
+ _react2.default.createElement('i', { className: 'fa glyphicon ' + btnGlyphicon }),
+ ' ',
+ btnText
+ );
+ return _react2.default.createElement(
+ 'button',
+ _extends({ type: 'button',
+ className: 'btn ' + btnContextual + ' ' + exportCsvBtnDefaultClass + ' ' + className + ' hidden-print',
+ onClick: onClick
+ }, rest),
+ content
+ );
+ }
+ }]);
+
+ return ExportCSVButton;
+}(_react.Component);
+
+ExportCSVButton.propTypes = {
+ btnText: _propTypes2.default.string,
+ btnContextual: _propTypes2.default.string,
+ className: _propTypes2.default.string,
+ onClick: _propTypes2.default.func,
+ btnGlyphicon: _propTypes2.default.string
+};
+ExportCSVButton.defaultProps = {
+ btnText: _Const2.default.EXPORT_CSV_TEXT,
+ btnContextual: 'btn-success',
+ className: '',
+ onClick: undefined,
+ btnGlyphicon: 'glyphicon-export fa-download'
+};
+
+var _default = ExportCSVButton;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(exportCsvBtnDefaultClass, 'exportCsvBtnDefaultClass', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ExportCSVButton.js');
+
+ __REACT_HOT_LOADER__.register(ExportCSVButton, 'ExportCSVButton', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ExportCSVButton.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ExportCSVButton.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/toolbar/InsertButton.js b/lib/toolbar/InsertButton.js
new file mode 100644
index 000000000..ef59c5653
--- /dev/null
+++ b/lib/toolbar/InsertButton.js
@@ -0,0 +1,108 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _Const = require('../Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var insertBtnDefaultClass = 'react-bs-table-add-btn';
+
+var InsertButton = function (_Component) {
+ _inherits(InsertButton, _Component);
+
+ function InsertButton() {
+ _classCallCheck(this, InsertButton);
+
+ return _possibleConstructorReturn(this, (InsertButton.__proto__ || Object.getPrototypeOf(InsertButton)).apply(this, arguments));
+ }
+
+ _createClass(InsertButton, [{
+ key: 'render',
+ value: function render() {
+ var _props = this.props,
+ btnContextual = _props.btnContextual,
+ className = _props.className,
+ onClick = _props.onClick,
+ btnGlyphicon = _props.btnGlyphicon,
+ btnText = _props.btnText,
+ children = _props.children,
+ rest = _objectWithoutProperties(_props, ['btnContextual', 'className', 'onClick', 'btnGlyphicon', 'btnText', 'children']);
+
+ var content = children || _react2.default.createElement(
+ 'span',
+ null,
+ _react2.default.createElement('i', { className: 'fa glyphicon ' + btnGlyphicon }),
+ ' ',
+ btnText
+ );
+ return _react2.default.createElement(
+ 'button',
+ _extends({ type: 'button',
+ className: 'btn ' + btnContextual + ' ' + insertBtnDefaultClass + ' ' + className,
+ onClick: onClick
+ }, rest),
+ content
+ );
+ }
+ }]);
+
+ return InsertButton;
+}(_react.Component);
+
+InsertButton.propTypes = {
+ btnText: _propTypes2.default.string,
+ btnContextual: _propTypes2.default.string,
+ className: _propTypes2.default.string,
+ onClick: _propTypes2.default.func,
+ btnGlyphicon: _propTypes2.default.string
+};
+InsertButton.defaultProps = {
+ btnText: _Const2.default.INSERT_BTN_TEXT,
+ btnContextual: 'btn-info',
+ className: '',
+ onClick: undefined,
+ btnGlyphicon: 'glyphicon-plus fa-plus'
+};
+
+var _default = InsertButton;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(insertBtnDefaultClass, 'insertBtnDefaultClass', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertButton.js');
+
+ __REACT_HOT_LOADER__.register(InsertButton, 'InsertButton', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertButton.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertButton.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/toolbar/InsertModal.js b/lib/toolbar/InsertModal.js
new file mode 100644
index 000000000..d19c391ec
--- /dev/null
+++ b/lib/toolbar/InsertModal.js
@@ -0,0 +1,194 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _InsertModalHeader = require('./InsertModalHeader');
+
+var _InsertModalHeader2 = _interopRequireDefault(_InsertModalHeader);
+
+var _InsertModalFooter = require('./InsertModalFooter');
+
+var _InsertModalFooter2 = _interopRequireDefault(_InsertModalFooter);
+
+var _InsertModalBody = require('./InsertModalBody');
+
+var _InsertModalBody2 = _interopRequireDefault(_InsertModalBody);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; } /* eslint no-console: 0 */
+
+var defaultModalClassName = 'react-bs-table-insert-modal';
+
+var InsertModal = function (_Component) {
+ _inherits(InsertModal, _Component);
+
+ function InsertModal() {
+ var _ref;
+
+ var _temp, _this, _ret;
+
+ _classCallCheck(this, InsertModal);
+
+ for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = InsertModal.__proto__ || Object.getPrototypeOf(InsertModal)).call.apply(_ref, [this].concat(args))), _this), _this.handleSave = function () {
+ var _this2;
+
+ return (_this2 = _this).__handleSave__REACT_HOT_LOADER__.apply(_this2, arguments);
+ }, _temp), _possibleConstructorReturn(_this, _ret);
+ }
+
+ _createClass(InsertModal, [{
+ key: '__handleSave__REACT_HOT_LOADER__',
+ value: function __handleSave__REACT_HOT_LOADER__() {
+ return this.__handleSave__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleSave__REACT_HOT_LOADER__',
+ value: function __handleSave__REACT_HOT_LOADER__() {
+ if (this.body.getFieldValue) {
+ this.props.onSave(this.body.getFieldValue());
+ } else {
+ console.error('Custom InsertModalBody should implement getFieldValue function\n and should return an object presented as the new row that user input.');
+ }
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _this3 = this;
+
+ var _props = this.props,
+ headerComponent = _props.headerComponent,
+ footerComponent = _props.footerComponent,
+ bodyComponent = _props.bodyComponent;
+ var _props2 = this.props,
+ columns = _props2.columns,
+ validateState = _props2.validateState,
+ ignoreEditable = _props2.ignoreEditable,
+ onModalClose = _props2.onModalClose;
+
+ var bodyAttr = { columns: columns, validateState: validateState, ignoreEditable: ignoreEditable };
+
+ bodyComponent = bodyComponent && bodyComponent(columns, validateState, ignoreEditable);
+
+ headerComponent = headerComponent && headerComponent(onModalClose, this.handleSave);
+
+ footerComponent = footerComponent && footerComponent(onModalClose, this.handleSave);
+
+ if (bodyComponent) {
+ bodyComponent = _react2.default.cloneElement(bodyComponent, { ref: function ref(node) {
+ return _this3.body = node;
+ } });
+ }
+
+ if (headerComponent && headerComponent.type.name === _InsertModalHeader2.default.name) {
+ var eventProps = {};
+ if (!headerComponent.props.onModalClose) eventProps.onModalClose = onModalClose;
+ if (!headerComponent.props.onSave) eventProps.onSave = this.handleSave;
+ if (Object.keys(eventProps).length > 0) {
+ headerComponent = _react2.default.cloneElement(headerComponent, eventProps);
+ }
+ } else if (headerComponent && headerComponent.type.name !== _InsertModalHeader2.default.name) {
+ var className = headerComponent.props.className;
+
+ if (typeof className === 'undefined' || className.indexOf('modal-header') === -1) {
+ headerComponent = _react2.default.createElement(
+ 'div',
+ { className: 'modal-header' },
+ headerComponent
+ );
+ }
+ }
+
+ if (footerComponent && footerComponent.type.name === _InsertModalFooter2.default.name) {
+ var _eventProps = {};
+ if (!footerComponent.props.onModalClose) _eventProps.onModalClose = onModalClose;
+ if (!footerComponent.props.onSave) _eventProps.onSave = this.handleSave;
+ if (Object.keys(_eventProps).length > 0) {
+ footerComponent = _react2.default.cloneElement(footerComponent, _eventProps);
+ }
+ } else if (footerComponent && footerComponent.type.name !== _InsertModalFooter2.default.name) {
+ var _className = footerComponent.props.className;
+
+ if (typeof _className === 'undefined' || _className.indexOf('modal-footer') === -1) {
+ footerComponent = _react2.default.createElement(
+ 'div',
+ { className: 'modal-footer' },
+ footerComponent
+ );
+ }
+ }
+
+ return _react2.default.createElement(
+ 'div',
+ { className: 'modal-content ' + defaultModalClassName },
+ headerComponent || _react2.default.createElement(_InsertModalHeader2.default, {
+ version: this.props.version,
+ className: 'react-bs-table-inser-modal-header',
+ onModalClose: onModalClose }),
+ bodyComponent || _react2.default.createElement(_InsertModalBody2.default, _extends({ ref: function ref(node) {
+ return _this3.body = node;
+ } }, bodyAttr)),
+ footerComponent || _react2.default.createElement(_InsertModalFooter2.default, {
+ className: 'react-bs-table-inser-modal-footer',
+ onModalClose: onModalClose,
+ onSave: this.handleSave })
+ );
+ }
+ }]);
+
+ return InsertModal;
+}(_react.Component);
+
+var _default = InsertModal;
+exports.default = _default;
+
+InsertModal.propTypes = {
+ version: _propTypes2.default.string.isRequired,
+ columns: _propTypes2.default.array.isRequired,
+ validateState: _propTypes2.default.object.isRequired,
+ ignoreEditable: _propTypes2.default.bool,
+ headerComponent: _propTypes2.default.func,
+ bodyComponent: _propTypes2.default.func,
+ footerComponent: _propTypes2.default.func,
+ onModalClose: _propTypes2.default.func,
+ onSave: _propTypes2.default.func
+};
+
+InsertModal.defaultProps = {};
+;
+
+var _temp2 = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(defaultModalClassName, 'defaultModalClassName', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertModal.js');
+
+ __REACT_HOT_LOADER__.register(InsertModal, 'InsertModal', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertModal.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertModal.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/toolbar/InsertModalBody.js b/lib/toolbar/InsertModalBody.js
new file mode 100644
index 000000000..b299d88e7
--- /dev/null
+++ b/lib/toolbar/InsertModalBody.js
@@ -0,0 +1,160 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _Editor = require('../Editor');
+
+var _Editor2 = _interopRequireDefault(_Editor);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; } /* eslint react/display-name: 0 */
+
+
+var InsertModalBody = function (_Component) {
+ _inherits(InsertModalBody, _Component);
+
+ function InsertModalBody() {
+ _classCallCheck(this, InsertModalBody);
+
+ return _possibleConstructorReturn(this, (InsertModalBody.__proto__ || Object.getPrototypeOf(InsertModalBody)).apply(this, arguments));
+ }
+
+ _createClass(InsertModalBody, [{
+ key: 'getFieldValue',
+ value: function getFieldValue() {
+ var _this2 = this;
+
+ var newRow = {};
+ this.props.columns.forEach(function (column, i) {
+ var inputVal = void 0;
+ if (column.autoValue) {
+ // when you want same auto generate value and not allow edit, example ID field
+ var time = new Date().getTime();
+ inputVal = typeof column.autoValue === 'function' ? column.autoValue() : 'autovalue-' + time;
+ } else if (column.hiddenOnInsert || !column.field) {
+ inputVal = '';
+ } else {
+ var dom = _this2.refs[column.field + i];
+ inputVal = dom.value;
+
+ if (column.editable && column.editable.type === 'checkbox') {
+ var values = inputVal.split(':');
+ inputVal = dom.checked ? values[0] : values[1];
+ } else if (column.customInsertEditor) {
+ inputVal = inputVal || dom.getFieldValue();
+ }
+ }
+ newRow[column.field] = inputVal;
+ }, this);
+ return newRow;
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _props = this.props,
+ columns = _props.columns,
+ validateState = _props.validateState,
+ ignoreEditable = _props.ignoreEditable;
+
+ return _react2.default.createElement(
+ 'div',
+ { className: 'modal-body' },
+ columns.map(function (column, i) {
+ var editable = column.editable,
+ format = column.format,
+ field = column.field,
+ name = column.name,
+ autoValue = column.autoValue,
+ hiddenOnInsert = column.hiddenOnInsert,
+ customInsertEditor = column.customInsertEditor;
+
+ var attr = {
+ ref: field + i,
+ placeholder: editable.placeholder ? editable.placeholder : name
+ };
+ var fieldElement = void 0;
+ var defaultValue = editable.defaultValue || undefined;
+ if (customInsertEditor) {
+ var getElement = customInsertEditor.getElement;
+
+ fieldElement = getElement(column, attr, 'form-control', ignoreEditable, defaultValue);
+ }
+
+ // fieldElement = false, means to use default editor when enable custom editor
+ // Becasuse some users want to have default editor based on some condition.
+ if (!customInsertEditor || fieldElement === false) {
+ fieldElement = (0, _Editor2.default)(editable, attr, format, '', defaultValue, ignoreEditable);
+ }
+
+ if (autoValue || hiddenOnInsert || !column.field) {
+ // when you want same auto generate value
+ // and not allow edit, for example ID field
+ return null;
+ }
+ var error = validateState[field] ? _react2.default.createElement(
+ 'span',
+ { className: 'help-block bg-danger' },
+ validateState[field]
+ ) : null;
+ return _react2.default.createElement(
+ 'div',
+ { className: 'form-group', key: field },
+ _react2.default.createElement(
+ 'label',
+ null,
+ name
+ ),
+ fieldElement,
+ error
+ );
+ })
+ );
+ }
+ }]);
+
+ return InsertModalBody;
+}(_react.Component);
+
+InsertModalBody.propTypes = {
+ columns: _propTypes2.default.array,
+ validateState: _propTypes2.default.object,
+ ignoreEditable: _propTypes2.default.bool
+};
+
+InsertModalBody.defaultProps = {
+ validateState: {},
+ ignoreEditable: false
+};
+
+var _default = InsertModalBody;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(InsertModalBody, 'InsertModalBody', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertModalBody.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertModalBody.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/toolbar/InsertModalFooter.js b/lib/toolbar/InsertModalFooter.js
new file mode 100644
index 000000000..55d1d8d60
--- /dev/null
+++ b/lib/toolbar/InsertModalFooter.js
@@ -0,0 +1,166 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _Const = require('../Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var InsertModalFooter = function (_Component) {
+ _inherits(InsertModalFooter, _Component);
+
+ function InsertModalFooter() {
+ var _ref;
+
+ var _temp, _this, _ret;
+
+ _classCallCheck(this, InsertModalFooter);
+
+ for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = InsertModalFooter.__proto__ || Object.getPrototypeOf(InsertModalFooter)).call.apply(_ref, [this].concat(args))), _this), _this.handleCloseBtnClick = function () {
+ var _this2;
+
+ return (_this2 = _this).__handleCloseBtnClick__REACT_HOT_LOADER__.apply(_this2, arguments);
+ }, _this.handleSaveBtnClick = function () {
+ var _this3;
+
+ return (_this3 = _this).__handleSaveBtnClick__REACT_HOT_LOADER__.apply(_this3, arguments);
+ }, _temp), _possibleConstructorReturn(_this, _ret);
+ }
+
+ _createClass(InsertModalFooter, [{
+ key: '__handleSaveBtnClick__REACT_HOT_LOADER__',
+ value: function __handleSaveBtnClick__REACT_HOT_LOADER__() {
+ return this.__handleSaveBtnClick__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleCloseBtnClick__REACT_HOT_LOADER__',
+ value: function __handleCloseBtnClick__REACT_HOT_LOADER__() {
+ return this.__handleCloseBtnClick__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleCloseBtnClick__REACT_HOT_LOADER__',
+ value: function __handleCloseBtnClick__REACT_HOT_LOADER__(e) {
+ var _props = this.props,
+ beforeClose = _props.beforeClose,
+ onModalClose = _props.onModalClose;
+
+ beforeClose && beforeClose(e);
+ onModalClose();
+ }
+ }, {
+ key: '__handleSaveBtnClick__REACT_HOT_LOADER__',
+ value: function __handleSaveBtnClick__REACT_HOT_LOADER__(e) {
+ var _props2 = this.props,
+ beforeSave = _props2.beforeSave,
+ onSave = _props2.onSave;
+
+ beforeSave && beforeSave(e);
+ onSave();
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _props3 = this.props,
+ className = _props3.className,
+ saveBtnText = _props3.saveBtnText,
+ closeBtnText = _props3.closeBtnText,
+ closeBtnContextual = _props3.closeBtnContextual,
+ saveBtnContextual = _props3.saveBtnContextual,
+ closeBtnClass = _props3.closeBtnClass,
+ saveBtnClass = _props3.saveBtnClass,
+ children = _props3.children;
+
+
+ var content = children || [_react2.default.createElement(
+ 'button',
+ {
+ key: 'closeBtn',
+ type: 'button',
+ className: 'btn ' + closeBtnContextual + ' ' + closeBtnClass,
+ onClick: this.handleCloseBtnClick },
+ closeBtnText
+ ), _react2.default.createElement(
+ 'button',
+ {
+ key: 'saveBtn',
+ type: 'button',
+ className: 'btn ' + saveBtnContextual + ' ' + saveBtnClass,
+ onClick: this.handleSaveBtnClick },
+ saveBtnText
+ )];
+
+ return _react2.default.createElement(
+ 'div',
+ { className: 'modal-footer ' + className },
+ content
+ );
+ }
+ }]);
+
+ return InsertModalFooter;
+}(_react.Component);
+
+InsertModalFooter.propTypes = {
+ className: _propTypes2.default.string,
+ saveBtnText: _propTypes2.default.string,
+ closeBtnText: _propTypes2.default.string,
+ closeBtnContextual: _propTypes2.default.string,
+ saveBtnContextual: _propTypes2.default.string,
+ closeBtnClass: _propTypes2.default.string,
+ saveBtnClass: _propTypes2.default.string,
+ beforeClose: _propTypes2.default.func,
+ beforeSave: _propTypes2.default.func,
+ onSave: _propTypes2.default.func,
+ onModalClose: _propTypes2.default.func
+};
+InsertModalFooter.defaultProps = {
+ className: '',
+ saveBtnText: _Const2.default.SAVE_BTN_TEXT,
+ closeBtnText: _Const2.default.CLOSE_BTN_TEXT,
+ closeBtnContextual: 'btn-default btn-secondary',
+ saveBtnContextual: 'btn-primary',
+ closeBtnClass: '',
+ saveBtnClass: '',
+ beforeClose: undefined,
+ beforeSave: undefined
+};
+
+var _default = InsertModalFooter;
+exports.default = _default;
+;
+
+var _temp2 = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(InsertModalFooter, 'InsertModalFooter', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertModalFooter.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertModalFooter.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/toolbar/InsertModalHeader.js b/lib/toolbar/InsertModalHeader.js
new file mode 100644
index 000000000..9e0f99f5a
--- /dev/null
+++ b/lib/toolbar/InsertModalHeader.js
@@ -0,0 +1,157 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _util = require('../util');
+
+var _util2 = _interopRequireDefault(_util);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var InsertModalHeader = function (_Component) {
+ _inherits(InsertModalHeader, _Component);
+
+ function InsertModalHeader() {
+ var _ref;
+
+ var _temp, _this, _ret;
+
+ _classCallCheck(this, InsertModalHeader);
+
+ for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = InsertModalHeader.__proto__ || Object.getPrototypeOf(InsertModalHeader)).call.apply(_ref, [this].concat(args))), _this), _this.handleCloseBtnClick = function () {
+ var _this2;
+
+ return (_this2 = _this).__handleCloseBtnClick__REACT_HOT_LOADER__.apply(_this2, arguments);
+ }, _temp), _possibleConstructorReturn(_this, _ret);
+ }
+
+ _createClass(InsertModalHeader, [{
+ key: '__handleCloseBtnClick__REACT_HOT_LOADER__',
+ value: function __handleCloseBtnClick__REACT_HOT_LOADER__() {
+ return this.__handleCloseBtnClick__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleCloseBtnClick__REACT_HOT_LOADER__',
+ value: function __handleCloseBtnClick__REACT_HOT_LOADER__(e) {
+ var _props = this.props,
+ onModalClose = _props.onModalClose,
+ beforeClose = _props.beforeClose;
+
+ beforeClose && beforeClose(e);
+ onModalClose();
+ }
+ }, {
+ key: 'renderContent',
+ value: function renderContent(closeBtn) {
+ var _props2 = this.props,
+ version = _props2.version,
+ titleText = _props2.title;
+
+ var title = _react2.default.createElement(
+ 'h4',
+ { key: 'title', className: 'modal-title' },
+ titleText
+ );
+ if (_util2.default.isBootstrap4(version)) {
+ return [title, closeBtn];
+ } else {
+ return _react2.default.createElement(
+ 'span',
+ null,
+ closeBtn,
+ title
+ );
+ }
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _props3 = this.props,
+ hideClose = _props3.hideClose,
+ className = _props3.className,
+ children = _props3.children;
+
+
+ var closeBtn = hideClose ? null : _react2.default.createElement(
+ 'button',
+ { type: 'button',
+ className: 'close', onClick: this.handleCloseBtnClick },
+ _react2.default.createElement(
+ 'span',
+ { 'aria-hidden': 'true' },
+ '\xD7'
+ ),
+ _react2.default.createElement(
+ 'span',
+ { className: 'sr-only' },
+ 'Close'
+ )
+ );
+
+ var content = children || this.renderContent(closeBtn);
+
+ return _react2.default.createElement(
+ 'div',
+ { className: 'modal-header ' + className },
+ content
+ );
+ }
+ }]);
+
+ return InsertModalHeader;
+}(_react.Component);
+
+InsertModalHeader.propTypes = {
+ version: _propTypes2.default.string,
+ className: _propTypes2.default.string,
+ title: _propTypes2.default.string,
+ onModalClose: _propTypes2.default.func,
+ hideClose: _propTypes2.default.bool,
+ beforeClose: _propTypes2.default.func
+};
+InsertModalHeader.defaultProps = {
+ version: '3',
+ className: '',
+ title: 'Add Row',
+ onModalClose: undefined,
+ hideClose: false,
+ beforeClose: undefined
+};
+
+var _default = InsertModalHeader;
+exports.default = _default;
+;
+
+var _temp2 = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(InsertModalHeader, 'InsertModalHeader', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertModalHeader.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/InsertModalHeader.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/toolbar/SearchField.js b/lib/toolbar/SearchField.js
new file mode 100644
index 000000000..3e0a09421
--- /dev/null
+++ b/lib/toolbar/SearchField.js
@@ -0,0 +1,103 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _reactDom = require('react-dom');
+
+var _reactDom2 = _interopRequireDefault(_reactDom);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var SearchField = function (_Component) {
+ _inherits(SearchField, _Component);
+
+ function SearchField() {
+ _classCallCheck(this, SearchField);
+
+ return _possibleConstructorReturn(this, (SearchField.__proto__ || Object.getPrototypeOf(SearchField)).apply(this, arguments));
+ }
+
+ _createClass(SearchField, [{
+ key: 'getValue',
+ value: function getValue() {
+ return _reactDom2.default.findDOMNode(this).value;
+ }
+ }, {
+ key: 'setValue',
+ value: function setValue(value) {
+ _reactDom2.default.findDOMNode(this).value = value;
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _props = this.props,
+ className = _props.className,
+ defaultValue = _props.defaultValue,
+ placeholder = _props.placeholder,
+ onKeyUp = _props.onKeyUp,
+ rest = _objectWithoutProperties(_props, ['className', 'defaultValue', 'placeholder', 'onKeyUp']);
+
+ return _react2.default.createElement('input', _extends({
+ className: 'form-control ' + className,
+ type: 'text',
+ defaultValue: defaultValue,
+ placeholder: placeholder || SearchField.defaultProps.placeholder,
+ onKeyUp: onKeyUp,
+ style: { zIndex: 0 }
+ }, rest));
+ }
+ }]);
+
+ return SearchField;
+}(_react.Component);
+
+SearchField.propTypes = {
+ className: _propTypes2.default.string,
+ defaultValue: _propTypes2.default.string,
+ placeholder: _propTypes2.default.string,
+ onKeyUp: _propTypes2.default.func
+};
+SearchField.defaultProps = {
+ className: '',
+ defaultValue: '',
+ placeholder: 'Search',
+ onKeyUp: undefined
+};
+
+var _default = SearchField;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(SearchField, 'SearchField', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/SearchField.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/SearchField.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/toolbar/ShowSelectedOnlyButton.js b/lib/toolbar/ShowSelectedOnlyButton.js
new file mode 100644
index 000000000..f5007aab8
--- /dev/null
+++ b/lib/toolbar/ShowSelectedOnlyButton.js
@@ -0,0 +1,111 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _Const = require('../Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; }
+
+var showSelectedOnlyBtnDefaultClass = 'react-bs-table-show-sel-only-btn';
+
+var ShowSelectedOnlyButton = function (_Component) {
+ _inherits(ShowSelectedOnlyButton, _Component);
+
+ function ShowSelectedOnlyButton() {
+ _classCallCheck(this, ShowSelectedOnlyButton);
+
+ return _possibleConstructorReturn(this, (ShowSelectedOnlyButton.__proto__ || Object.getPrototypeOf(ShowSelectedOnlyButton)).apply(this, arguments));
+ }
+
+ _createClass(ShowSelectedOnlyButton, [{
+ key: 'render',
+ value: function render() {
+ var _props = this.props,
+ btnContextual = _props.btnContextual,
+ className = _props.className,
+ onClick = _props.onClick,
+ toggle = _props.toggle,
+ showAllText = _props.showAllText,
+ showOnlySelectText = _props.showOnlySelectText,
+ children = _props.children,
+ rest = _objectWithoutProperties(_props, ['btnContextual', 'className', 'onClick', 'toggle', 'showAllText', 'showOnlySelectText', 'children']);
+
+ var content = children || _react2.default.createElement(
+ 'span',
+ null,
+ toggle ? showAllText : showOnlySelectText
+ );
+ return _react2.default.createElement(
+ 'button',
+ _extends({ type: 'button',
+ 'aria-pressed': 'false',
+ 'data-toggle': 'button',
+ className: 'btn ' + btnContextual + ' ' + showSelectedOnlyBtnDefaultClass + ' ' + className,
+ onClick: onClick
+ }, rest),
+ content
+ );
+ }
+ }]);
+
+ return ShowSelectedOnlyButton;
+}(_react.Component);
+
+ShowSelectedOnlyButton.propTypes = {
+ showAllText: _propTypes2.default.string,
+ showOnlySelectText: _propTypes2.default.string,
+ toggle: _propTypes2.default.bool,
+ btnContextual: _propTypes2.default.string,
+ className: _propTypes2.default.string,
+ onClick: _propTypes2.default.func
+};
+ShowSelectedOnlyButton.defaultProps = {
+ showAllText: _Const2.default.SHOW_ALL,
+ showOnlySelectText: _Const2.default.SHOW_ONLY_SELECT,
+ toggle: false,
+ btnContextual: 'btn-primary',
+ className: '',
+ onClick: undefined
+};
+
+var _default = ShowSelectedOnlyButton;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(showSelectedOnlyBtnDefaultClass, 'showSelectedOnlyBtnDefaultClass', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ShowSelectedOnlyButton.js');
+
+ __REACT_HOT_LOADER__.register(ShowSelectedOnlyButton, 'ShowSelectedOnlyButton', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ShowSelectedOnlyButton.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ShowSelectedOnlyButton.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/toolbar/ToolBar.js b/lib/toolbar/ToolBar.js
new file mode 100644
index 000000000..6f8c5edc3
--- /dev/null
+++ b/lib/toolbar/ToolBar.js
@@ -0,0 +1,727 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }();
+
+var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _reactModal = require('react-modal');
+
+var _reactModal2 = _interopRequireDefault(_reactModal);
+
+var _Const = require('../Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+var _Notification = require('../Notification.js');
+
+var _InsertModal = require('./InsertModal');
+
+var _InsertModal2 = _interopRequireDefault(_InsertModal);
+
+var _InsertButton = require('./InsertButton');
+
+var _InsertButton2 = _interopRequireDefault(_InsertButton);
+
+var _DeleteButton = require('./DeleteButton');
+
+var _DeleteButton2 = _interopRequireDefault(_DeleteButton);
+
+var _ExportCSVButton = require('./ExportCSVButton');
+
+var _ExportCSVButton2 = _interopRequireDefault(_ExportCSVButton);
+
+var _ShowSelectedOnlyButton = require('./ShowSelectedOnlyButton');
+
+var _ShowSelectedOnlyButton2 = _interopRequireDefault(_ShowSelectedOnlyButton);
+
+var _SearchField = require('./SearchField');
+
+var _SearchField2 = _interopRequireDefault(_SearchField);
+
+var _ClearSearchButton = require('./ClearSearchButton');
+
+var _ClearSearchButton2 = _interopRequireDefault(_ClearSearchButton);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : 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; } /* eslint no-console: 0 */
+
+// import classSet from 'classnames';
+
+// import editor from '../Editor';
+
+
+var ToolBar = function (_Component) {
+ _inherits(ToolBar, _Component);
+
+ function ToolBar(props) {
+ _classCallCheck(this, ToolBar);
+
+ var _this = _possibleConstructorReturn(this, (ToolBar.__proto__ || Object.getPrototypeOf(ToolBar)).call(this, props));
+
+ _this.displayCommonMessage = function () {
+ return _this.__displayCommonMessage__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleSaveBtnClick = function () {
+ return _this.__handleSaveBtnClick__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.afterHandleSaveBtnClick = function () {
+ return _this.__afterHandleSaveBtnClick__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleModalClose = function () {
+ return _this.__handleModalClose__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleModalOpen = function () {
+ return _this.__handleModalOpen__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleShowOnlyToggle = function () {
+ return _this.__handleShowOnlyToggle__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleDropRowBtnClick = function () {
+ return _this.__handleDropRowBtnClick__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleDebounce = function () {
+ return _this.__handleDebounce__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleKeyUp = function () {
+ return _this.__handleKeyUp__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleExportCSV = function () {
+ return _this.__handleExportCSV__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.handleClearBtnClick = function () {
+ return _this.__handleClearBtnClick__REACT_HOT_LOADER__.apply(_this, arguments);
+ };
+
+ _this.timeouteClear = 0;
+ _this.modalClassName;
+ _this.state = {
+ isInsertModalOpen: false,
+ validateState: null,
+ shakeEditor: false,
+ showSelected: false
+ };
+ return _this;
+ }
+
+ /* eslint-disable */
+
+
+ _createClass(ToolBar, [{
+ key: '__handleClearBtnClick__REACT_HOT_LOADER__',
+ value: function __handleClearBtnClick__REACT_HOT_LOADER__() {
+ return this.__handleClearBtnClick__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleExportCSV__REACT_HOT_LOADER__',
+ value: function __handleExportCSV__REACT_HOT_LOADER__() {
+ return this.__handleExportCSV__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleKeyUp__REACT_HOT_LOADER__',
+ value: function __handleKeyUp__REACT_HOT_LOADER__() {
+ return this.__handleKeyUp__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleDebounce__REACT_HOT_LOADER__',
+ value: function __handleDebounce__REACT_HOT_LOADER__(func, wait, immediate) {
+ var _this2 = this,
+ _arguments = arguments;
+
+ var timeout = void 0;
+
+ return function () {
+ var later = function later() {
+ timeout = null;
+
+ if (!immediate) {
+ func.apply(_this2, _arguments);
+ }
+ };
+
+ var callNow = immediate && !timeout;
+
+ clearTimeout(timeout);
+
+ timeout = setTimeout(later, wait || 0);
+
+ if (callNow) {
+ func.appy(_this2, _arguments);
+ }
+ };
+ }
+ }, {
+ key: '__handleDropRowBtnClick__REACT_HOT_LOADER__',
+ value: function __handleDropRowBtnClick__REACT_HOT_LOADER__() {
+ return this.__handleDropRowBtnClick__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleShowOnlyToggle__REACT_HOT_LOADER__',
+ value: function __handleShowOnlyToggle__REACT_HOT_LOADER__() {
+ return this.__handleShowOnlyToggle__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleModalOpen__REACT_HOT_LOADER__',
+ value: function __handleModalOpen__REACT_HOT_LOADER__() {
+ return this.__handleModalOpen__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleModalClose__REACT_HOT_LOADER__',
+ value: function __handleModalClose__REACT_HOT_LOADER__() {
+ return this.__handleModalClose__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__afterHandleSaveBtnClick__REACT_HOT_LOADER__',
+ value: function __afterHandleSaveBtnClick__REACT_HOT_LOADER__() {
+ return this.__afterHandleSaveBtnClick__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__handleSaveBtnClick__REACT_HOT_LOADER__',
+ value: function __handleSaveBtnClick__REACT_HOT_LOADER__() {
+ return this.__handleSaveBtnClick__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: '__displayCommonMessage__REACT_HOT_LOADER__',
+ value: function __displayCommonMessage__REACT_HOT_LOADER__() {
+ return this.__displayCommonMessage__REACT_HOT_LOADER__.apply(this, arguments);
+ }
+ }, {
+ key: 'UNSAFE_componentWillMount',
+ value: function UNSAFE_componentWillMount() {
+ var _this3 = this;
+
+ /* eslint-enable */
+ var delay = this.props.searchDelayTime ? this.props.searchDelayTime : 0;
+ this.debounceCallback = this.handleDebounce(function () {
+ _this3.seachInput && _this3.props.onSearch(_this3.seachInput.getValue());
+ }, delay);
+ }
+
+ /* eslint-disable */
+
+ }, {
+ key: 'UNSAFE_componentWillReceiveProps',
+ value: function UNSAFE_componentWillReceiveProps(nextProps) {
+ /* eslint-enable */
+ if (nextProps.reset) {
+ this.setSearchInput('');
+ }
+ }
+ }, {
+ key: 'componentWillUnmount',
+ value: function componentWillUnmount() {
+ this.clearTimeout();
+ }
+ }, {
+ key: 'setSearchInput',
+ value: function setSearchInput(text) {
+ if (this.seachInput && this.seachInput.value !== text) {
+ this.seachInput.value = text;
+ }
+ }
+ }, {
+ key: 'clearTimeout',
+ value: function (_clearTimeout) {
+ function clearTimeout() {
+ return _clearTimeout.apply(this, arguments);
+ }
+
+ clearTimeout.toString = function () {
+ return _clearTimeout.toString();
+ };
+
+ return clearTimeout;
+ }(function () {
+ if (this.timeouteClear) {
+ clearTimeout(this.timeouteClear);
+ this.timeouteClear = 0;
+ }
+ })
+ }, {
+ key: '__displayCommonMessage__REACT_HOT_LOADER__',
+ value: function __displayCommonMessage__REACT_HOT_LOADER__() {
+ (0, _Notification.notice)('error', this.props.insertFailIndicator, '');
+ }
+ }, {
+ key: 'validateNewRow',
+ value: function validateNewRow(newRow) {
+ var _this4 = this;
+
+ var validateState = {};
+ var isValid = true;
+ var tempMsg = void 0;
+ var responseType = void 0;
+
+ this.props.columns.forEach(function (column) {
+ if (column.isKey && column.keyValidator) {
+ // key validator for checking exist key
+ tempMsg = _this4.props.isValidKey(newRow[column.field]);
+ if (tempMsg) {
+ _this4.displayCommonMessage();
+ isValid = false;
+ validateState[column.field] = tempMsg;
+ }
+ } else if (column.editable && column.editable.validator) {
+ // process validate
+ tempMsg = column.editable.validator(newRow[column.field], newRow);
+ responseType = typeof tempMsg === 'undefined' ? 'undefined' : _typeof(tempMsg);
+ if (responseType !== 'object' && tempMsg !== true) {
+ _this4.displayCommonMessage();
+ isValid = false;
+ validateState[column.field] = tempMsg;
+ } else if (responseType === 'object' && tempMsg.isValid !== true) {
+ (0, _Notification.notice)(tempMsg.notification.type, tempMsg.notification.msg, tempMsg.notification.title);
+ isValid = false;
+ validateState[column.field] = tempMsg.notification.msg;
+ }
+ }
+ });
+
+ if (isValid) {
+ return true;
+ } else {
+ this.clearTimeout();
+ // show error in form and shake it
+ this.setState(function () {
+ return { validateState: validateState, shakeEditor: true };
+ });
+ this.timeouteClear = setTimeout(function () {
+ _this4.setState(function () {
+ return { shakeEditor: false };
+ });
+ }, 300);
+ return null;
+ }
+ }
+ }, {
+ key: '__handleSaveBtnClick__REACT_HOT_LOADER__',
+ value: function __handleSaveBtnClick__REACT_HOT_LOADER__(newRow) {
+ if (!this.validateNewRow(newRow)) {
+ // validation fail
+ return;
+ }
+ var msg = this.props.onAddRow(newRow);
+ if (msg !== false) {
+ this.afterHandleSaveBtnClick(msg);
+ }
+ }
+ }, {
+ key: '__afterHandleSaveBtnClick__REACT_HOT_LOADER__',
+ value: function __afterHandleSaveBtnClick__REACT_HOT_LOADER__(msg) {
+ var _this5 = this;
+
+ if (msg) {
+ (0, _Notification.notice)('error', msg, '');
+ this.clearTimeout();
+ // shake form and hack prevent modal hide
+ this.setState(function () {
+ return {
+ shakeEditor: true,
+ validateState: 'this is hack for prevent bootstrap modal hide'
+ };
+ });
+ // clear animate class
+ this.timeouteClear = setTimeout(function () {
+ _this5.setState(function () {
+ return { shakeEditor: false };
+ });
+ }, 300);
+ } else {
+ // reset state and hide modal hide
+ this.setState(function () {
+ return {
+ validateState: null,
+ shakeEditor: false,
+ isInsertModalOpen: false
+ };
+ });
+ }
+ }
+ }, {
+ key: '__handleModalClose__REACT_HOT_LOADER__',
+ value: function __handleModalClose__REACT_HOT_LOADER__() {
+ this.setState(function () {
+ return { isInsertModalOpen: false };
+ });
+ }
+ }, {
+ key: '__handleModalOpen__REACT_HOT_LOADER__',
+ value: function __handleModalOpen__REACT_HOT_LOADER__() {
+ this.setState(function () {
+ return { isInsertModalOpen: true };
+ });
+ }
+ }, {
+ key: '__handleShowOnlyToggle__REACT_HOT_LOADER__',
+ value: function __handleShowOnlyToggle__REACT_HOT_LOADER__() {
+ var _this6 = this;
+
+ this.setState(function () {
+ return {
+ showSelected: !_this6.state.showSelected
+ };
+ });
+ this.props.onShowOnlySelected();
+ }
+ }, {
+ key: '__handleDropRowBtnClick__REACT_HOT_LOADER__',
+ value: function __handleDropRowBtnClick__REACT_HOT_LOADER__() {
+ this.props.onDropRow();
+ }
+ }, {
+ key: '__handleKeyUp__REACT_HOT_LOADER__',
+ value: function __handleKeyUp__REACT_HOT_LOADER__(event) {
+ event.persist();
+ this.debounceCallback(event);
+ }
+ }, {
+ key: '__handleExportCSV__REACT_HOT_LOADER__',
+ value: function __handleExportCSV__REACT_HOT_LOADER__() {
+ this.props.onExportCSV();
+ }
+ }, {
+ key: '__handleClearBtnClick__REACT_HOT_LOADER__',
+ value: function __handleClearBtnClick__REACT_HOT_LOADER__() {
+ this.seachInput && this.seachInput.setValue('');
+ this.props.onSearch('');
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ this.modalClassName = 'bs-table-modal-sm' + ToolBar.modalSeq++;
+ var toolbar = null;
+ var btnGroup = null;
+ var insertBtn = null;
+ var deleteBtn = null;
+ var exportCSVBtn = null;
+ var showSelectedOnlyBtn = null;
+
+ if (this.props.enableInsert) {
+ if (this.props.insertBtn) {
+ insertBtn = this.renderCustomBtn(this.props.insertBtn, [this.handleModalOpen], _InsertButton2.default.name, 'onClick', this.handleModalOpen);
+ } else {
+ insertBtn = _react2.default.createElement(_InsertButton2.default, { btnText: this.props.insertText,
+ onClick: this.handleModalOpen });
+ }
+ }
+
+ if (this.props.enableDelete) {
+ if (this.props.deleteBtn) {
+ deleteBtn = this.renderCustomBtn(this.props.deleteBtn, [this.handleDropRowBtnClick], _DeleteButton2.default.name, 'onClick', this.handleDropRowBtnClick);
+ } else {
+ deleteBtn = _react2.default.createElement(_DeleteButton2.default, { btnText: this.props.deleteText,
+ onClick: this.handleDropRowBtnClick });
+ }
+ }
+
+ if (this.props.enableShowOnlySelected) {
+ if (this.props.showSelectedOnlyBtn) {
+ showSelectedOnlyBtn = this.renderCustomBtn(this.props.showSelectedOnlyBtn, [this.handleShowOnlyToggle, this.state.showSelected], _ShowSelectedOnlyButton2.default.name, 'onClick', this.handleShowOnlyToggle);
+ } else {
+ showSelectedOnlyBtn = _react2.default.createElement(_ShowSelectedOnlyButton2.default, { toggle: this.state.showSelected,
+ onClick: this.handleShowOnlyToggle });
+ }
+ }
+
+ if (this.props.enableExportCSV) {
+ if (this.props.exportCSVBtn) {
+ exportCSVBtn = this.renderCustomBtn(this.props.exportCSVBtn, [this.handleExportCSV], _ExportCSVButton2.default.name, 'onClick', this.handleExportCSV);
+ } else {
+ exportCSVBtn = _react2.default.createElement(_ExportCSVButton2.default, { btnText: this.props.exportCSVText,
+ onClick: this.handleExportCSV });
+ }
+ }
+
+ if (this.props.btnGroup) {
+ btnGroup = this.props.btnGroup({
+ exportCSVBtn: exportCSVBtn,
+ insertBtn: insertBtn,
+ deleteBtn: deleteBtn,
+ showSelectedOnlyBtn: showSelectedOnlyBtn
+ });
+ } else {
+ btnGroup = _react2.default.createElement(
+ 'div',
+ { className: 'btn-group btn-group-sm', role: 'group' },
+ exportCSVBtn,
+ insertBtn,
+ deleteBtn,
+ showSelectedOnlyBtn
+ );
+ }
+
+ var _renderSearchPanel = this.renderSearchPanel(),
+ _renderSearchPanel2 = _slicedToArray(_renderSearchPanel, 3),
+ searchPanel = _renderSearchPanel2[0],
+ searchField = _renderSearchPanel2[1],
+ clearBtn = _renderSearchPanel2[2];
+
+ var modal = this.props.enableInsert ? this.renderInsertRowModal() : null;
+
+ if (this.props.toolBar) {
+ toolbar = this.props.toolBar({
+ components: {
+ exportCSVBtn: exportCSVBtn,
+ insertBtn: insertBtn,
+ deleteBtn: deleteBtn,
+ showSelectedOnlyBtn: showSelectedOnlyBtn,
+ searchPanel: searchPanel,
+ btnGroup: btnGroup,
+ searchField: searchField,
+ clearBtn: clearBtn
+ },
+ event: {
+ openInsertModal: this.handleModalOpen,
+ closeInsertModal: this.handleModalClose,
+ dropRow: this.handleDropRowBtnClick,
+ showOnlyToogle: this.handleShowOnlyToggle,
+ exportCSV: this.handleExportCSV,
+ search: this.props.onSearch
+ }
+ });
+ } else {
+ toolbar = [_react2.default.createElement(
+ 'div',
+ { key: 'toolbar-left', className: 'col-xs-6 col-sm-6 col-md-6 col-lg-8' },
+ this.props.searchPosition === 'left' ? searchPanel : btnGroup
+ ), _react2.default.createElement(
+ 'div',
+ { key: 'toolbar-right', className: 'col-xs-6 col-sm-6 col-md-6 col-lg-4' },
+ this.props.searchPosition === 'left' ? btnGroup : searchPanel
+ )];
+ }
+
+ return _react2.default.createElement(
+ 'div',
+ { className: 'row' },
+ toolbar,
+ modal
+ );
+ }
+ }, {
+ key: 'renderSearchPanel',
+ value: function renderSearchPanel() {
+ var _this7 = this;
+
+ if (this.props.enableSearch) {
+ var classNames = 'form-group form-group-sm react-bs-table-search-form';
+ var clearBtn = null;
+ var searchField = null;
+ var searchPanel = null;
+ if (this.props.clearSearch) {
+ if (this.props.clearSearchBtn) {
+ clearBtn = this.renderCustomBtn(this.props.clearSearchBtn, [this.handleClearBtnClick], _ClearSearchButton2.default.name, 'onClick', this.handleClearBtnClick); /* eslint max-len: 0*/
+ } else {
+ clearBtn = _react2.default.createElement(_ClearSearchButton2.default, { onClick: this.handleClearBtnClick });
+ }
+ classNames += ' input-group input-group-sm';
+ }
+
+ if (this.props.searchField) {
+ searchField = this.props.searchField({
+ search: this.handleKeyUp,
+ defaultValue: this.props.defaultSearch,
+ placeholder: this.props.searchPlaceholder
+ });
+ if (searchField.type.name === _SearchField2.default.name) {
+ searchField = _react2.default.cloneElement(searchField, {
+ ref: function ref(node) {
+ return _this7.seachInput = node;
+ },
+ onKeyUp: this.handleKeyUp
+ });
+ } else {
+ searchField = _react2.default.cloneElement(searchField, {
+ ref: function ref(node) {
+ return _this7.seachInput = node;
+ }
+ });
+ }
+ } else {
+ searchField = _react2.default.createElement(_SearchField2.default, { ref: function ref(node) {
+ return _this7.seachInput = node;
+ },
+ defaultValue: this.props.defaultSearch,
+ placeholder: this.props.searchPlaceholder,
+ onKeyUp: this.handleKeyUp });
+ }
+ if (this.props.searchPanel) {
+ searchPanel = this.props.searchPanel({
+ searchField: searchField, clearBtn: clearBtn,
+ search: this.props.onSearch,
+ defaultValue: this.props.defaultSearch,
+ placeholder: this.props.searchPlaceholder,
+ clearBtnClick: this.handleClearBtnClick
+ });
+ } else {
+ searchPanel = _react2.default.createElement(
+ 'div',
+ { className: classNames },
+ searchField,
+ _react2.default.createElement(
+ 'span',
+ { className: 'input-group-btn' },
+ clearBtn
+ )
+ );
+ }
+ return [searchPanel, searchField, clearBtn];
+ } else {
+ return [];
+ }
+ }
+ }, {
+ key: 'renderInsertRowModal',
+ value: function renderInsertRowModal() {
+ var validateState = this.state.validateState || {};
+ var _props = this.props,
+ version = _props.version,
+ columns = _props.columns,
+ ignoreEditable = _props.ignoreEditable,
+ insertModalHeader = _props.insertModalHeader,
+ insertModalBody = _props.insertModalBody,
+ insertModalFooter = _props.insertModalFooter,
+ insertModal = _props.insertModal;
+
+
+ var modal = void 0;
+ modal = insertModal && insertModal(this.handleModalClose, this.handleSaveBtnClick, columns, validateState, ignoreEditable);
+
+ if (!modal) {
+ modal = _react2.default.createElement(_InsertModal2.default, {
+ version: version,
+ columns: columns,
+ validateState: validateState,
+ ignoreEditable: ignoreEditable,
+ onModalClose: this.handleModalClose,
+ onSave: this.handleSaveBtnClick,
+ headerComponent: insertModalHeader,
+ bodyComponent: insertModalBody,
+ footerComponent: insertModalFooter });
+ }
+
+ return _react2.default.createElement(
+ _reactModal2.default,
+ { className: 'react-bs-insert-modal modal-dialog',
+ isOpen: this.state.isInsertModalOpen,
+ ariaHideApp: false,
+ onRequestClose: this.handleModalClose,
+ contentLabel: 'Modal' },
+ modal
+ );
+ }
+ }, {
+ key: 'renderCustomBtn',
+ value: function renderCustomBtn(cb, params, componentName, eventName, event) {
+ var element = cb.apply(null, params);
+ if (element.type.name === componentName && !element.props[eventName]) {
+ var props = {};
+ props[eventName] = event;
+ element = _react2.default.cloneElement(element, props);
+ }
+ return element;
+ }
+ }]);
+
+ return ToolBar;
+}(_react.Component);
+
+ToolBar.modalSeq = 0;
+
+
+ToolBar.propTypes = {
+ version: _propTypes2.default.string,
+ onAddRow: _propTypes2.default.func,
+ onDropRow: _propTypes2.default.func,
+ onShowOnlySelected: _propTypes2.default.func,
+ enableInsert: _propTypes2.default.bool,
+ enableDelete: _propTypes2.default.bool,
+ enableSearch: _propTypes2.default.bool,
+ enableShowOnlySelected: _propTypes2.default.bool,
+ columns: _propTypes2.default.array,
+ searchPlaceholder: _propTypes2.default.string,
+ exportCSVText: _propTypes2.default.string,
+ insertText: _propTypes2.default.string,
+ deleteText: _propTypes2.default.string,
+ saveText: _propTypes2.default.string,
+ closeText: _propTypes2.default.string,
+ clearSearch: _propTypes2.default.bool,
+ ignoreEditable: _propTypes2.default.bool,
+ defaultSearch: _propTypes2.default.string,
+ insertModalHeader: _propTypes2.default.func,
+ insertModalBody: _propTypes2.default.func,
+ insertModalFooter: _propTypes2.default.func,
+ insertModal: _propTypes2.default.func,
+ insertBtn: _propTypes2.default.func,
+ deleteBtn: _propTypes2.default.func,
+ showSelectedOnlyBtn: _propTypes2.default.func,
+ exportCSVBtn: _propTypes2.default.func,
+ clearSearchBtn: _propTypes2.default.func,
+ searchField: _propTypes2.default.func,
+ searchPanel: _propTypes2.default.func,
+ btnGroup: _propTypes2.default.func,
+ toolBar: _propTypes2.default.func,
+ searchPosition: _propTypes2.default.string,
+ reset: _propTypes2.default.bool,
+ isValidKey: _propTypes2.default.func,
+ insertFailIndicator: _propTypes2.default.string
+};
+
+ToolBar.defaultProps = {
+ reset: false,
+ enableInsert: false,
+ enableDelete: false,
+ enableSearch: false,
+ enableShowOnlySelected: false,
+ clearSearch: false,
+ ignoreEditable: false,
+ exportCSVText: _Const2.default.EXPORT_CSV_TEXT,
+ insertText: _Const2.default.INSERT_BTN_TEXT,
+ deleteText: _Const2.default.DELETE_BTN_TEXT,
+ saveText: _Const2.default.SAVE_BTN_TEXT,
+ closeText: _Const2.default.CLOSE_BTN_TEXT
+};
+
+var _default = ToolBar;
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(ToolBar, 'ToolBar', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ToolBar.js');
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/toolbar/ToolBar.js');
+}();
+
+;
\ No newline at end of file
diff --git a/lib/util.js b/lib/util.js
new file mode 100644
index 000000000..1a3a48f4d
--- /dev/null
+++ b/lib/util.js
@@ -0,0 +1,153 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _Const = require('./Const');
+
+var _Const2 = _interopRequireDefault(_Const);
+
+var _classnames = require('classnames');
+
+var _classnames2 = _interopRequireDefault(_classnames);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var _default = {
+ renderReactSortCaret: function renderReactSortCaret(order, isBootstrap4) {
+ var orderClass = void 0;
+ if (isBootstrap4) {
+ orderClass = (0, _classnames2.default)('fa', {
+ 'fa-sort-asc': order === _Const2.default.SORT_ASC,
+ 'fa-sort-desc': order === _Const2.default.SORT_DESC
+ });
+ return _react2.default.createElement('span', { className: orderClass, style: { margin: '10px 5px' } });
+ } else {
+ orderClass = (0, _classnames2.default)('order', {
+ 'dropup': order === _Const2.default.SORT_ASC
+ });
+ return _react2.default.createElement(
+ 'span',
+ { className: orderClass },
+ _react2.default.createElement('span', { className: 'caret', style: { margin: '10px 5px' } })
+ );
+ }
+ },
+ isFunction: function isFunction(obj) {
+ return obj && typeof obj === 'function';
+ },
+ getScrollBarWidth: function getScrollBarWidth() {
+ var inner = document.createElement('p');
+ inner.style.width = '100%';
+ inner.style.height = '200px';
+
+ var outer = document.createElement('div');
+ outer.style.position = 'absolute';
+ outer.style.top = '0px';
+ outer.style.left = '0px';
+ outer.style.visibility = 'hidden';
+ outer.style.width = '200px';
+ outer.style.height = '150px';
+ outer.style.overflow = 'hidden';
+ outer.appendChild(inner);
+
+ document.body.appendChild(outer);
+ var w1 = inner.getBoundingClientRect().width;
+ outer.style.overflow = 'scroll';
+ var w2 = inner.getBoundingClientRect().width;
+
+ if (w1 === w2) w2 = outer.clientWidth;
+
+ document.body.removeChild(outer);
+
+ return w1 - w2;
+ },
+ canUseDOM: function canUseDOM() {
+ return typeof window !== 'undefined' && typeof window.document !== 'undefined';
+ },
+
+
+ // We calculate an offset here in order to properly fetch the indexed data,
+ // despite the page start index not always being 1
+ getNormalizedPage: function getNormalizedPage(pageStartIndex, page) {
+ pageStartIndex = this.getFirstPage(pageStartIndex);
+ if (page === undefined) page = pageStartIndex;
+ var offset = Math.abs(_Const2.default.PAGE_START_INDEX - pageStartIndex);
+ return page + offset;
+ },
+ getFirstPage: function getFirstPage(pageStartIndex) {
+ return pageStartIndex !== undefined ? pageStartIndex : _Const2.default.PAGE_START_INDEX;
+ },
+ isBootstrap4: function isBootstrap4(version) {
+ return version === '4';
+ },
+ isSelectRowDefined: function isSelectRowDefined(mode) {
+ return mode === _Const2.default.ROW_SELECT_SINGLE || mode === _Const2.default.ROW_SELECT_MULTI;
+ },
+ renderColGroup: function renderColGroup(columns, selectRow) {
+ var expandColumnOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
+ var version = arguments[3];
+
+ var selectRowHeader = null;
+ var expandRowHeader = null;
+ var isBootstrap4 = this.isBootstrap4(version);
+ var isSelectRowDefined = this.isSelectRowDefined(selectRow.mode);
+ var columnWidth = isBootstrap4 ? '38px' : '30px';
+ if (isSelectRowDefined) {
+ var style = {
+ width: selectRow.columnWidth || columnWidth,
+ minWidth: selectRow.columnWidth || columnWidth
+ };
+ if (!selectRow.hideSelectColumn) {
+ selectRowHeader = _react2.default.createElement('col', { key: 'select-col', style: style });
+ }
+ }
+ if (expandColumnOptions.expandColumnVisible) {
+ var _style = {
+ width: expandColumnOptions.columnWidth || columnWidth,
+ minWidth: expandColumnOptions.columnWidth || columnWidth
+ };
+ expandRowHeader = _react2.default.createElement('col', { key: 'expand-col', style: _style });
+ }
+ var theader = columns.map(function (column, i) {
+ var style = {
+ display: column.hidden ? 'none' : null
+ };
+ if (column.width) {
+ var width = !isNaN(column.width) ? column.width + 'px' : column.width;
+ style.width = width;
+ /** add min-wdth to fix user assign column width
+ not eq offsetWidth in large column table **/
+ style.minWidth = width;
+ }
+ return _react2.default.createElement('col', { style: style, key: i });
+ });
+
+ return _react2.default.createElement(
+ 'colgroup',
+ null,
+ expandColumnOptions.expandColumnVisible && expandColumnOptions.expandColumnBeforeSelectColumn && expandRowHeader,
+ selectRowHeader,
+ expandColumnOptions.expandColumnVisible && !expandColumnOptions.expandColumnBeforeSelectColumn && expandRowHeader,
+ theader
+ );
+ }
+}; /* eslint react/display-name: 0 */
+
+exports.default = _default;
+;
+
+var _temp = function () {
+ if (typeof __REACT_HOT_LOADER__ === 'undefined') {
+ return;
+ }
+
+ __REACT_HOT_LOADER__.register(_default, 'default', '/home/nogi/nogi/forks/react-bootstrap-table/src/util.js');
+}();
+
+;
\ No newline at end of file
diff --git a/npm-shrinkwrap.json b/npm-shrinkwrap.json
new file mode 100644
index 000000000..d7b5a4e43
--- /dev/null
+++ b/npm-shrinkwrap.json
@@ -0,0 +1,13803 @@
+{
+ "name": "react-bootstrap-table",
+ "version": "4.3.1",
+ "lockfileVersion": 1,
+ "requires": true,
+ "dependencies": {
+ "@babel/runtime": {
+ "version": "7.9.2",
+ "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.9.2.tgz",
+ "integrity": "sha512-NE2DtOdufG7R5vnfQUTehdTfNycfUANEtCa9PssN9O/xmTzP4E08UI797ixaei6hBEVL9BI/PsdJS5x7mWoB9Q==",
+ "dev": true,
+ "requires": {
+ "regenerator-runtime": "^0.13.4"
+ },
+ "dependencies": {
+ "regenerator-runtime": {
+ "version": "0.13.5",
+ "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz",
+ "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==",
+ "dev": true
+ }
+ }
+ },
+ "JSONStream": {
+ "version": "1.3.5",
+ "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz",
+ "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==",
+ "dev": true,
+ "requires": {
+ "jsonparse": "^1.2.0",
+ "through": ">=2.2.7 <3"
+ }
+ },
+ "abab": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/abab/-/abab-1.0.4.tgz",
+ "integrity": "sha1-X6rZwsB/YN12dw9xzwJbYqY8/U4=",
+ "dev": true
+ },
+ "accepts": {
+ "version": "1.3.7",
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz",
+ "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==",
+ "dev": true,
+ "requires": {
+ "mime-types": "~2.1.24",
+ "negotiator": "0.6.2"
+ }
+ },
+ "acorn": {
+ "version": "5.7.4",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz",
+ "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==",
+ "dev": true
+ },
+ "acorn-globals": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz",
+ "integrity": "sha1-/YJw9x+7SZawBPqIDuXUZXOnMb8=",
+ "dev": true,
+ "requires": {
+ "acorn": "^4.0.4"
+ },
+ "dependencies": {
+ "acorn": {
+ "version": "4.0.13",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz",
+ "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=",
+ "dev": true
+ }
+ }
+ },
+ "acorn-node": {
+ "version": "1.8.2",
+ "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz",
+ "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==",
+ "dev": true,
+ "requires": {
+ "acorn": "^7.0.0",
+ "acorn-walk": "^7.0.0",
+ "xtend": "^4.0.2"
+ },
+ "dependencies": {
+ "acorn": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz",
+ "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==",
+ "dev": true
+ }
+ }
+ },
+ "acorn-walk": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.1.1.tgz",
+ "integrity": "sha512-wdlPY2tm/9XBr7QkKlq0WQVgiuGTX6YWPyRyBviSoScBuLfTVQhvwg6wJ369GJ/1nPfTLMfnrFIfjqVg6d+jQQ==",
+ "dev": true
+ },
+ "ajv": {
+ "version": "6.12.2",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz",
+ "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==",
+ "dev": true,
+ "requires": {
+ "fast-deep-equal": "^3.1.1",
+ "fast-json-stable-stringify": "^2.0.0",
+ "json-schema-traverse": "^0.4.1",
+ "uri-js": "^4.2.2"
+ }
+ },
+ "align-text": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz",
+ "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=",
+ "dev": true,
+ "requires": {
+ "kind-of": "^3.0.2",
+ "longest": "^1.0.1",
+ "repeat-string": "^1.5.2"
+ }
+ },
+ "alphanum-sort": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz",
+ "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=",
+ "dev": true
+ },
+ "alter": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/alter/-/alter-0.2.0.tgz",
+ "integrity": "sha1-x1iICGF1cgNKrmJICvJrHU0cs80=",
+ "dev": true,
+ "requires": {
+ "stable": "~0.1.3"
+ }
+ },
+ "amdefine": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
+ "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
+ "dev": true
+ },
+ "ansi-colors": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz",
+ "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==",
+ "dev": true,
+ "requires": {
+ "ansi-wrap": "^0.1.0"
+ }
+ },
+ "ansi-escapes": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz",
+ "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=",
+ "dev": true
+ },
+ "ansi-gray": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz",
+ "integrity": "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=",
+ "dev": true,
+ "requires": {
+ "ansi-wrap": "0.1.0"
+ }
+ },
+ "ansi-regex": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
+ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
+ "dev": true
+ },
+ "ansi-styles": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
+ "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
+ "dev": true
+ },
+ "ansi-wrap": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz",
+ "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=",
+ "dev": true
+ },
+ "anymatch": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz",
+ "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==",
+ "dev": true,
+ "requires": {
+ "micromatch": "^2.1.5",
+ "normalize-path": "^2.0.0"
+ },
+ "dependencies": {
+ "arr-diff": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
+ "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
+ "dev": true,
+ "requires": {
+ "arr-flatten": "^1.0.1"
+ }
+ },
+ "array-unique": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
+ "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=",
+ "dev": true
+ },
+ "braces": {
+ "version": "1.8.5",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
+ "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
+ "dev": true,
+ "requires": {
+ "expand-range": "^1.8.1",
+ "preserve": "^0.2.0",
+ "repeat-element": "^1.1.2"
+ }
+ },
+ "expand-brackets": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
+ "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
+ "dev": true,
+ "requires": {
+ "is-posix-bracket": "^0.1.0"
+ }
+ },
+ "extglob": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
+ "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^1.0.0"
+ }
+ },
+ "is-extglob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
+ "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=",
+ "dev": true
+ },
+ "is-glob": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
+ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^1.0.0"
+ }
+ },
+ "micromatch": {
+ "version": "2.3.11",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",
+ "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=",
+ "dev": true,
+ "requires": {
+ "arr-diff": "^2.0.0",
+ "array-unique": "^0.2.1",
+ "braces": "^1.8.2",
+ "expand-brackets": "^0.1.4",
+ "extglob": "^0.3.1",
+ "filename-regex": "^2.0.0",
+ "is-extglob": "^1.0.0",
+ "is-glob": "^2.0.1",
+ "kind-of": "^3.0.2",
+ "normalize-path": "^2.0.1",
+ "object.omit": "^2.0.0",
+ "parse-glob": "^3.0.4",
+ "regex-cache": "^0.4.2"
+ }
+ }
+ }
+ },
+ "append-transform": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-0.4.0.tgz",
+ "integrity": "sha1-126/jKlNJ24keja61EpLdKthGZE=",
+ "dev": true,
+ "requires": {
+ "default-require-extensions": "^1.0.0"
+ }
+ },
+ "archy": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz",
+ "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=",
+ "dev": true
+ },
+ "argparse": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
+ "dev": true,
+ "requires": {
+ "sprintf-js": "~1.0.2"
+ }
+ },
+ "arr-diff": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
+ "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=",
+ "dev": true
+ },
+ "arr-flatten": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
+ "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
+ "dev": true
+ },
+ "arr-union": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",
+ "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=",
+ "dev": true
+ },
+ "array-differ": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz",
+ "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=",
+ "dev": true
+ },
+ "array-each": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz",
+ "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=",
+ "dev": true
+ },
+ "array-equal": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz",
+ "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=",
+ "dev": true
+ },
+ "array-find-index": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
+ "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
+ "dev": true
+ },
+ "array-flatten": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
+ "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=",
+ "dev": true
+ },
+ "array-slice": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz",
+ "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==",
+ "dev": true
+ },
+ "array-union": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
+ "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=",
+ "dev": true,
+ "requires": {
+ "array-uniq": "^1.0.1"
+ }
+ },
+ "array-uniq": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz",
+ "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=",
+ "dev": true
+ },
+ "array-unique": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
+ "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=",
+ "dev": true
+ },
+ "arrify": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
+ "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=",
+ "dev": true
+ },
+ "asap": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
+ "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=",
+ "dev": true
+ },
+ "asn1": {
+ "version": "0.2.4",
+ "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz",
+ "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==",
+ "dev": true,
+ "requires": {
+ "safer-buffer": "~2.1.0"
+ }
+ },
+ "asn1.js": {
+ "version": "4.10.1",
+ "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz",
+ "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==",
+ "dev": true,
+ "requires": {
+ "bn.js": "^4.0.0",
+ "inherits": "^2.0.1",
+ "minimalistic-assert": "^1.0.0"
+ }
+ },
+ "assert": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/assert/-/assert-1.3.0.tgz",
+ "integrity": "sha1-A5OaYiWCqBLMICMgoLmlbJuBWEk=",
+ "dev": true,
+ "requires": {
+ "util": "0.10.3"
+ },
+ "dependencies": {
+ "inherits": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
+ "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=",
+ "dev": true
+ },
+ "util": {
+ "version": "0.10.3",
+ "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
+ "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=",
+ "dev": true,
+ "requires": {
+ "inherits": "2.0.1"
+ }
+ }
+ }
+ },
+ "assert-plus": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
+ "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
+ "dev": true
+ },
+ "assign-symbols": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
+ "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=",
+ "dev": true
+ },
+ "ast-traverse": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/ast-traverse/-/ast-traverse-0.1.1.tgz",
+ "integrity": "sha1-ac8rg4bxnc2hux4F1o/jWdiJfeY=",
+ "dev": true
+ },
+ "ast-types": {
+ "version": "0.9.6",
+ "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.9.6.tgz",
+ "integrity": "sha1-ECyenpAF0+fjgpvwxPok7oYu6bk=",
+ "dev": true
+ },
+ "astw": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/astw/-/astw-2.2.0.tgz",
+ "integrity": "sha1-e9QXhNMkk5h66yOba04cV6hzuRc=",
+ "dev": true,
+ "requires": {
+ "acorn": "^4.0.3"
+ },
+ "dependencies": {
+ "acorn": {
+ "version": "4.0.13",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz",
+ "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=",
+ "dev": true
+ }
+ }
+ },
+ "async": {
+ "version": "1.5.2",
+ "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
+ "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=",
+ "dev": true
+ },
+ "async-each": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz",
+ "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==",
+ "dev": true
+ },
+ "asynckit": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+ "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
+ "dev": true
+ },
+ "atob": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz",
+ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==",
+ "dev": true
+ },
+ "autoprefixer": {
+ "version": "6.7.7",
+ "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-6.7.7.tgz",
+ "integrity": "sha1-Hb0cg1ZY41zj+ZhAmdsAWFx4IBQ=",
+ "dev": true,
+ "requires": {
+ "browserslist": "^1.7.6",
+ "caniuse-db": "^1.0.30000634",
+ "normalize-range": "^0.1.2",
+ "num2fraction": "^1.2.2",
+ "postcss": "^5.2.16",
+ "postcss-value-parser": "^3.2.3"
+ }
+ },
+ "aws-sign2": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
+ "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=",
+ "dev": true
+ },
+ "aws4": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz",
+ "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==",
+ "dev": true
+ },
+ "babel-code-frame": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz",
+ "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=",
+ "dev": true,
+ "requires": {
+ "chalk": "^1.1.3",
+ "esutils": "^2.0.2",
+ "js-tokens": "^3.0.2"
+ },
+ "dependencies": {
+ "js-tokens": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz",
+ "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=",
+ "dev": true
+ }
+ }
+ },
+ "babel-core": {
+ "version": "6.26.3",
+ "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz",
+ "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==",
+ "dev": true,
+ "requires": {
+ "babel-code-frame": "^6.26.0",
+ "babel-generator": "^6.26.0",
+ "babel-helpers": "^6.24.1",
+ "babel-messages": "^6.23.0",
+ "babel-register": "^6.26.0",
+ "babel-runtime": "^6.26.0",
+ "babel-template": "^6.26.0",
+ "babel-traverse": "^6.26.0",
+ "babel-types": "^6.26.0",
+ "babylon": "^6.18.0",
+ "convert-source-map": "^1.5.1",
+ "debug": "^2.6.9",
+ "json5": "^0.5.1",
+ "lodash": "^4.17.4",
+ "minimatch": "^3.0.4",
+ "path-is-absolute": "^1.0.1",
+ "private": "^0.1.8",
+ "slash": "^1.0.0",
+ "source-map": "^0.5.7"
+ }
+ },
+ "babel-eslint": {
+ "version": "6.1.2",
+ "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-6.1.2.tgz",
+ "integrity": "sha1-UpNBn+NnLWZZjTJ9qWlFZ7pqXy8=",
+ "dev": true,
+ "requires": {
+ "babel-traverse": "^6.0.20",
+ "babel-types": "^6.0.19",
+ "babylon": "^6.0.18",
+ "lodash.assign": "^4.0.0",
+ "lodash.pickby": "^4.0.0"
+ }
+ },
+ "babel-generator": {
+ "version": "6.26.1",
+ "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz",
+ "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==",
+ "dev": true,
+ "requires": {
+ "babel-messages": "^6.23.0",
+ "babel-runtime": "^6.26.0",
+ "babel-types": "^6.26.0",
+ "detect-indent": "^4.0.0",
+ "jsesc": "^1.3.0",
+ "lodash": "^4.17.4",
+ "source-map": "^0.5.7",
+ "trim-right": "^1.0.1"
+ }
+ },
+ "babel-helper-bindify-decorators": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz",
+ "integrity": "sha1-FMGeXxQte0fxmlJDHlKxzLxAozA=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0",
+ "babel-traverse": "^6.24.1",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-helper-builder-binary-assignment-operator-visitor": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz",
+ "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=",
+ "dev": true,
+ "requires": {
+ "babel-helper-explode-assignable-expression": "^6.24.1",
+ "babel-runtime": "^6.22.0",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-helper-builder-react-jsx": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.26.0.tgz",
+ "integrity": "sha1-Of+DE7dci2Xc7/HzHTg+D/KkCKA=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.26.0",
+ "babel-types": "^6.26.0",
+ "esutils": "^2.0.2"
+ }
+ },
+ "babel-helper-call-delegate": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz",
+ "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=",
+ "dev": true,
+ "requires": {
+ "babel-helper-hoist-variables": "^6.24.1",
+ "babel-runtime": "^6.22.0",
+ "babel-traverse": "^6.24.1",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-helper-define-map": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz",
+ "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=",
+ "dev": true,
+ "requires": {
+ "babel-helper-function-name": "^6.24.1",
+ "babel-runtime": "^6.26.0",
+ "babel-types": "^6.26.0",
+ "lodash": "^4.17.4"
+ }
+ },
+ "babel-helper-explode-assignable-expression": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz",
+ "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0",
+ "babel-traverse": "^6.24.1",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-helper-explode-class": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz",
+ "integrity": "sha1-fcKjkQ3uAHBW4eMdZAztPVTqqes=",
+ "dev": true,
+ "requires": {
+ "babel-helper-bindify-decorators": "^6.24.1",
+ "babel-runtime": "^6.22.0",
+ "babel-traverse": "^6.24.1",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-helper-function-name": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz",
+ "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=",
+ "dev": true,
+ "requires": {
+ "babel-helper-get-function-arity": "^6.24.1",
+ "babel-runtime": "^6.22.0",
+ "babel-template": "^6.24.1",
+ "babel-traverse": "^6.24.1",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-helper-get-function-arity": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz",
+ "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-helper-hoist-variables": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz",
+ "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-helper-optimise-call-expression": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz",
+ "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-helper-regex": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz",
+ "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.26.0",
+ "babel-types": "^6.26.0",
+ "lodash": "^4.17.4"
+ }
+ },
+ "babel-helper-remap-async-to-generator": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz",
+ "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=",
+ "dev": true,
+ "requires": {
+ "babel-helper-function-name": "^6.24.1",
+ "babel-runtime": "^6.22.0",
+ "babel-template": "^6.24.1",
+ "babel-traverse": "^6.24.1",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-helper-replace-supers": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz",
+ "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=",
+ "dev": true,
+ "requires": {
+ "babel-helper-optimise-call-expression": "^6.24.1",
+ "babel-messages": "^6.23.0",
+ "babel-runtime": "^6.22.0",
+ "babel-template": "^6.24.1",
+ "babel-traverse": "^6.24.1",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-helpers": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz",
+ "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0",
+ "babel-template": "^6.24.1"
+ }
+ },
+ "babel-jest": {
+ "version": "19.0.0",
+ "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-19.0.0.tgz",
+ "integrity": "sha1-WTI87ZmjqE01naIZyogQdP/Gzj8=",
+ "dev": true,
+ "requires": {
+ "babel-core": "^6.0.0",
+ "babel-plugin-istanbul": "^4.0.0",
+ "babel-preset-jest": "^19.0.0"
+ }
+ },
+ "babel-loader": {
+ "version": "6.4.1",
+ "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-6.4.1.tgz",
+ "integrity": "sha1-CzQRLVsHSKjc2/Uaz2+b1C1QuMo=",
+ "dev": true,
+ "requires": {
+ "find-cache-dir": "^0.1.1",
+ "loader-utils": "^0.2.16",
+ "mkdirp": "^0.5.1",
+ "object-assign": "^4.0.1"
+ }
+ },
+ "babel-messages": {
+ "version": "6.23.0",
+ "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz",
+ "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-check-es2015-constants": {
+ "version": "6.22.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz",
+ "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-constant-folding": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-constant-folding/-/babel-plugin-constant-folding-1.0.1.tgz",
+ "integrity": "sha1-g2HTZMmORJw2kr26Ue/whEKQqo4=",
+ "dev": true
+ },
+ "babel-plugin-dead-code-elimination": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/babel-plugin-dead-code-elimination/-/babel-plugin-dead-code-elimination-1.0.2.tgz",
+ "integrity": "sha1-X3xFEnTc18zNv7s+C4XdKBIfD2U=",
+ "dev": true
+ },
+ "babel-plugin-eval": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-eval/-/babel-plugin-eval-1.0.1.tgz",
+ "integrity": "sha1-ovrtJc5r5preS/7CY/cBaRlZUNo=",
+ "dev": true
+ },
+ "babel-plugin-inline-environment-variables": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-inline-environment-variables/-/babel-plugin-inline-environment-variables-1.0.1.tgz",
+ "integrity": "sha1-H1jOkSB61qgmqL9kX6/mj/X+P/4=",
+ "dev": true
+ },
+ "babel-plugin-istanbul": {
+ "version": "4.1.6",
+ "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-4.1.6.tgz",
+ "integrity": "sha512-PWP9FQ1AhZhS01T/4qLSKoHGY/xvkZdVBGlKM/HuxxS3+sC66HhTNR7+MpbO/so/cz/wY94MeSWJuP1hXIPfwQ==",
+ "dev": true,
+ "requires": {
+ "babel-plugin-syntax-object-rest-spread": "^6.13.0",
+ "find-up": "^2.1.0",
+ "istanbul-lib-instrument": "^1.10.1",
+ "test-exclude": "^4.2.1"
+ },
+ "dependencies": {
+ "find-up": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
+ "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
+ "dev": true,
+ "requires": {
+ "locate-path": "^2.0.0"
+ }
+ }
+ }
+ },
+ "babel-plugin-jest-hoist": {
+ "version": "19.0.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-19.0.0.tgz",
+ "integrity": "sha1-SuKgTqYSpuc2UfP95SwXiZEwS+o=",
+ "dev": true
+ },
+ "babel-plugin-jscript": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/babel-plugin-jscript/-/babel-plugin-jscript-1.0.4.tgz",
+ "integrity": "sha1-jzQsOCduh6R9X6CovT1etsytj8w=",
+ "dev": true
+ },
+ "babel-plugin-member-expression-literals": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-member-expression-literals/-/babel-plugin-member-expression-literals-1.0.1.tgz",
+ "integrity": "sha1-zF7bD6qNyScXDnTW0cAkQAIWJNM=",
+ "dev": true
+ },
+ "babel-plugin-property-literals": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-property-literals/-/babel-plugin-property-literals-1.0.1.tgz",
+ "integrity": "sha1-AlIwGQAZKYCxwRjv6kjOk6q4MzY=",
+ "dev": true
+ },
+ "babel-plugin-proto-to-assign": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/babel-plugin-proto-to-assign/-/babel-plugin-proto-to-assign-1.0.4.tgz",
+ "integrity": "sha1-xJ56/QL1d7xNoF6i3wAiUM980SM=",
+ "dev": true,
+ "requires": {
+ "lodash": "^3.9.3"
+ },
+ "dependencies": {
+ "lodash": {
+ "version": "3.10.1",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz",
+ "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=",
+ "dev": true
+ }
+ }
+ },
+ "babel-plugin-react-constant-elements": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/babel-plugin-react-constant-elements/-/babel-plugin-react-constant-elements-1.0.3.tgz",
+ "integrity": "sha1-lGc26DeEKcvDSdz/YvUcFDs041o=",
+ "dev": true
+ },
+ "babel-plugin-react-display-name": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/babel-plugin-react-display-name/-/babel-plugin-react-display-name-1.0.3.tgz",
+ "integrity": "sha1-dU/jiSboQkpOexWrbqYTne4FFPw=",
+ "dev": true
+ },
+ "babel-plugin-remove-console": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-remove-console/-/babel-plugin-remove-console-1.0.1.tgz",
+ "integrity": "sha1-2PJFVsOgUAXUKqqv0neH9T/wE6c=",
+ "dev": true
+ },
+ "babel-plugin-remove-debugger": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-remove-debugger/-/babel-plugin-remove-debugger-1.0.1.tgz",
+ "integrity": "sha1-/S6jzWGkKK0fO5yJiC/0KT6MFMc=",
+ "dev": true
+ },
+ "babel-plugin-runtime": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/babel-plugin-runtime/-/babel-plugin-runtime-1.0.7.tgz",
+ "integrity": "sha1-v3x9lm3Vbs1cF/ocslPJrLflSq8=",
+ "dev": true
+ },
+ "babel-plugin-syntax-async-functions": {
+ "version": "6.13.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz",
+ "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=",
+ "dev": true
+ },
+ "babel-plugin-syntax-async-generators": {
+ "version": "6.13.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz",
+ "integrity": "sha1-a8lj67FuzLrmuStZbrfzXDQqi5o=",
+ "dev": true
+ },
+ "babel-plugin-syntax-class-constructor-call": {
+ "version": "6.18.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz",
+ "integrity": "sha1-nLnTn+Q8hgC+yBRkVt3L1OGnZBY=",
+ "dev": true
+ },
+ "babel-plugin-syntax-class-properties": {
+ "version": "6.13.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz",
+ "integrity": "sha1-1+sjt5oxf4VDlixQW4J8fWysJ94=",
+ "dev": true
+ },
+ "babel-plugin-syntax-decorators": {
+ "version": "6.13.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz",
+ "integrity": "sha1-MSVjtNvePMgGzuPkFszurd0RrAs=",
+ "dev": true
+ },
+ "babel-plugin-syntax-do-expressions": {
+ "version": "6.13.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-6.13.0.tgz",
+ "integrity": "sha1-V0d1YTmqJtOQ0JQQsDdEugfkeW0=",
+ "dev": true
+ },
+ "babel-plugin-syntax-dynamic-import": {
+ "version": "6.18.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz",
+ "integrity": "sha1-jWomIpyDdFqZgqRBBRVyyqF5sdo=",
+ "dev": true
+ },
+ "babel-plugin-syntax-exponentiation-operator": {
+ "version": "6.13.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz",
+ "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=",
+ "dev": true
+ },
+ "babel-plugin-syntax-export-extensions": {
+ "version": "6.13.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz",
+ "integrity": "sha1-cKFITw+QiaToStRLrDU8lbmxJyE=",
+ "dev": true
+ },
+ "babel-plugin-syntax-flow": {
+ "version": "6.18.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz",
+ "integrity": "sha1-TDqyCiryaqIM0lmVw5jE63AxDI0=",
+ "dev": true
+ },
+ "babel-plugin-syntax-function-bind": {
+ "version": "6.13.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz",
+ "integrity": "sha1-SMSV8Xe98xqYHnMvVa3AvdJgH0Y=",
+ "dev": true
+ },
+ "babel-plugin-syntax-jsx": {
+ "version": "6.18.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz",
+ "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=",
+ "dev": true
+ },
+ "babel-plugin-syntax-object-rest-spread": {
+ "version": "6.13.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz",
+ "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=",
+ "dev": true
+ },
+ "babel-plugin-syntax-trailing-function-commas": {
+ "version": "6.22.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz",
+ "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=",
+ "dev": true
+ },
+ "babel-plugin-transform-async-generator-functions": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz",
+ "integrity": "sha1-8FiQAUX9PpkHpt3yjaWfIVJYpds=",
+ "dev": true,
+ "requires": {
+ "babel-helper-remap-async-to-generator": "^6.24.1",
+ "babel-plugin-syntax-async-generators": "^6.5.0",
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-async-to-generator": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz",
+ "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=",
+ "dev": true,
+ "requires": {
+ "babel-helper-remap-async-to-generator": "^6.24.1",
+ "babel-plugin-syntax-async-functions": "^6.8.0",
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-class-constructor-call": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.24.1.tgz",
+ "integrity": "sha1-gNwoVQWsBn3LjWxl4vbxGrd2Xvk=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-syntax-class-constructor-call": "^6.18.0",
+ "babel-runtime": "^6.22.0",
+ "babel-template": "^6.24.1"
+ }
+ },
+ "babel-plugin-transform-class-properties": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz",
+ "integrity": "sha1-anl2PqYdM9NvN7YRqp3vgagbRqw=",
+ "dev": true,
+ "requires": {
+ "babel-helper-function-name": "^6.24.1",
+ "babel-plugin-syntax-class-properties": "^6.8.0",
+ "babel-runtime": "^6.22.0",
+ "babel-template": "^6.24.1"
+ }
+ },
+ "babel-plugin-transform-decorators": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz",
+ "integrity": "sha1-eIAT2PjGtSIr33s0Q5Df13Vp4k0=",
+ "dev": true,
+ "requires": {
+ "babel-helper-explode-class": "^6.24.1",
+ "babel-plugin-syntax-decorators": "^6.13.0",
+ "babel-runtime": "^6.22.0",
+ "babel-template": "^6.24.1",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-plugin-transform-do-expressions": {
+ "version": "6.22.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-do-expressions/-/babel-plugin-transform-do-expressions-6.22.0.tgz",
+ "integrity": "sha1-KMyvkoEtlJws0SgfaQyP3EaK6bs=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-syntax-do-expressions": "^6.8.0",
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-es2015-arrow-functions": {
+ "version": "6.22.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz",
+ "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-es2015-block-scoped-functions": {
+ "version": "6.22.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz",
+ "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-es2015-block-scoping": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz",
+ "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.26.0",
+ "babel-template": "^6.26.0",
+ "babel-traverse": "^6.26.0",
+ "babel-types": "^6.26.0",
+ "lodash": "^4.17.4"
+ }
+ },
+ "babel-plugin-transform-es2015-classes": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz",
+ "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=",
+ "dev": true,
+ "requires": {
+ "babel-helper-define-map": "^6.24.1",
+ "babel-helper-function-name": "^6.24.1",
+ "babel-helper-optimise-call-expression": "^6.24.1",
+ "babel-helper-replace-supers": "^6.24.1",
+ "babel-messages": "^6.23.0",
+ "babel-runtime": "^6.22.0",
+ "babel-template": "^6.24.1",
+ "babel-traverse": "^6.24.1",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-plugin-transform-es2015-computed-properties": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz",
+ "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0",
+ "babel-template": "^6.24.1"
+ }
+ },
+ "babel-plugin-transform-es2015-destructuring": {
+ "version": "6.23.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz",
+ "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-es2015-duplicate-keys": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz",
+ "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-plugin-transform-es2015-for-of": {
+ "version": "6.23.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz",
+ "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-es2015-function-name": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz",
+ "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=",
+ "dev": true,
+ "requires": {
+ "babel-helper-function-name": "^6.24.1",
+ "babel-runtime": "^6.22.0",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-plugin-transform-es2015-literals": {
+ "version": "6.22.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz",
+ "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-es2015-modules-amd": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz",
+ "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1",
+ "babel-runtime": "^6.22.0",
+ "babel-template": "^6.24.1"
+ }
+ },
+ "babel-plugin-transform-es2015-modules-commonjs": {
+ "version": "6.26.2",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz",
+ "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==",
+ "dev": true,
+ "requires": {
+ "babel-plugin-transform-strict-mode": "^6.24.1",
+ "babel-runtime": "^6.26.0",
+ "babel-template": "^6.26.0",
+ "babel-types": "^6.26.0"
+ }
+ },
+ "babel-plugin-transform-es2015-modules-systemjs": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz",
+ "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=",
+ "dev": true,
+ "requires": {
+ "babel-helper-hoist-variables": "^6.24.1",
+ "babel-runtime": "^6.22.0",
+ "babel-template": "^6.24.1"
+ }
+ },
+ "babel-plugin-transform-es2015-modules-umd": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz",
+ "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-transform-es2015-modules-amd": "^6.24.1",
+ "babel-runtime": "^6.22.0",
+ "babel-template": "^6.24.1"
+ }
+ },
+ "babel-plugin-transform-es2015-object-super": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz",
+ "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=",
+ "dev": true,
+ "requires": {
+ "babel-helper-replace-supers": "^6.24.1",
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-es2015-parameters": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz",
+ "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=",
+ "dev": true,
+ "requires": {
+ "babel-helper-call-delegate": "^6.24.1",
+ "babel-helper-get-function-arity": "^6.24.1",
+ "babel-runtime": "^6.22.0",
+ "babel-template": "^6.24.1",
+ "babel-traverse": "^6.24.1",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-plugin-transform-es2015-shorthand-properties": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz",
+ "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-plugin-transform-es2015-spread": {
+ "version": "6.22.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz",
+ "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-es2015-sticky-regex": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz",
+ "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=",
+ "dev": true,
+ "requires": {
+ "babel-helper-regex": "^6.24.1",
+ "babel-runtime": "^6.22.0",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-plugin-transform-es2015-template-literals": {
+ "version": "6.22.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz",
+ "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-es2015-typeof-symbol": {
+ "version": "6.23.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz",
+ "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-es2015-unicode-regex": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz",
+ "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=",
+ "dev": true,
+ "requires": {
+ "babel-helper-regex": "^6.24.1",
+ "babel-runtime": "^6.22.0",
+ "regexpu-core": "^2.0.0"
+ }
+ },
+ "babel-plugin-transform-exponentiation-operator": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz",
+ "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=",
+ "dev": true,
+ "requires": {
+ "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1",
+ "babel-plugin-syntax-exponentiation-operator": "^6.8.0",
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-export-extensions": {
+ "version": "6.22.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz",
+ "integrity": "sha1-U3OLR+deghhYnuqUbLvTkQm75lM=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-syntax-export-extensions": "^6.8.0",
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-flow-strip-types": {
+ "version": "6.22.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz",
+ "integrity": "sha1-hMtnKTXUNxT9wyvOhFaNh0Qc988=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-syntax-flow": "^6.18.0",
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-function-bind": {
+ "version": "6.22.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-6.22.0.tgz",
+ "integrity": "sha1-xvuOlqwpajELjPjqQBRiQH3fapc=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-syntax-function-bind": "^6.8.0",
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-object-rest-spread": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz",
+ "integrity": "sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-syntax-object-rest-spread": "^6.8.0",
+ "babel-runtime": "^6.26.0"
+ }
+ },
+ "babel-plugin-transform-react-display-name": {
+ "version": "6.25.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.25.0.tgz",
+ "integrity": "sha1-Z+K/Hx6ck6sI25Z5LgU5K/LMKNE=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-react-jsx": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.24.1.tgz",
+ "integrity": "sha1-hAoCjn30YN/DotKfDA2R9jduZqM=",
+ "dev": true,
+ "requires": {
+ "babel-helper-builder-react-jsx": "^6.24.1",
+ "babel-plugin-syntax-jsx": "^6.8.0",
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-react-jsx-self": {
+ "version": "6.22.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-self/-/babel-plugin-transform-react-jsx-self-6.22.0.tgz",
+ "integrity": "sha1-322AqdomEqEh5t3XVYvL7PBuY24=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-syntax-jsx": "^6.8.0",
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-react-jsx-source": {
+ "version": "6.22.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.22.0.tgz",
+ "integrity": "sha1-ZqwSFT9c0tF7PBkmj0vwGX9E7NY=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-syntax-jsx": "^6.8.0",
+ "babel-runtime": "^6.22.0"
+ }
+ },
+ "babel-plugin-transform-regenerator": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz",
+ "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=",
+ "dev": true,
+ "requires": {
+ "regenerator-transform": "^0.10.0"
+ }
+ },
+ "babel-plugin-transform-strict-mode": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz",
+ "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.22.0",
+ "babel-types": "^6.24.1"
+ }
+ },
+ "babel-plugin-undeclared-variables-check": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/babel-plugin-undeclared-variables-check/-/babel-plugin-undeclared-variables-check-1.0.2.tgz",
+ "integrity": "sha1-XPGqU52BP/ZOmWQSkK9iCWX2Xe4=",
+ "dev": true,
+ "requires": {
+ "leven": "^1.0.2"
+ }
+ },
+ "babel-plugin-undefined-to-void": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/babel-plugin-undefined-to-void/-/babel-plugin-undefined-to-void-1.1.6.tgz",
+ "integrity": "sha1-f1eO+LeN+uYAM4XYQXph7aBuL4E=",
+ "dev": true
+ },
+ "babel-preset-es2015": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz",
+ "integrity": "sha1-1EBQ1rwsn+6nAqrzjXJ6AhBTiTk=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-check-es2015-constants": "^6.22.0",
+ "babel-plugin-transform-es2015-arrow-functions": "^6.22.0",
+ "babel-plugin-transform-es2015-block-scoped-functions": "^6.22.0",
+ "babel-plugin-transform-es2015-block-scoping": "^6.24.1",
+ "babel-plugin-transform-es2015-classes": "^6.24.1",
+ "babel-plugin-transform-es2015-computed-properties": "^6.24.1",
+ "babel-plugin-transform-es2015-destructuring": "^6.22.0",
+ "babel-plugin-transform-es2015-duplicate-keys": "^6.24.1",
+ "babel-plugin-transform-es2015-for-of": "^6.22.0",
+ "babel-plugin-transform-es2015-function-name": "^6.24.1",
+ "babel-plugin-transform-es2015-literals": "^6.22.0",
+ "babel-plugin-transform-es2015-modules-amd": "^6.24.1",
+ "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1",
+ "babel-plugin-transform-es2015-modules-systemjs": "^6.24.1",
+ "babel-plugin-transform-es2015-modules-umd": "^6.24.1",
+ "babel-plugin-transform-es2015-object-super": "^6.24.1",
+ "babel-plugin-transform-es2015-parameters": "^6.24.1",
+ "babel-plugin-transform-es2015-shorthand-properties": "^6.24.1",
+ "babel-plugin-transform-es2015-spread": "^6.22.0",
+ "babel-plugin-transform-es2015-sticky-regex": "^6.24.1",
+ "babel-plugin-transform-es2015-template-literals": "^6.22.0",
+ "babel-plugin-transform-es2015-typeof-symbol": "^6.22.0",
+ "babel-plugin-transform-es2015-unicode-regex": "^6.24.1",
+ "babel-plugin-transform-regenerator": "^6.24.1"
+ }
+ },
+ "babel-preset-flow": {
+ "version": "6.23.0",
+ "resolved": "https://registry.npmjs.org/babel-preset-flow/-/babel-preset-flow-6.23.0.tgz",
+ "integrity": "sha1-5xIYiHCFrpoktb5Baa/7WZgWxJ0=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-transform-flow-strip-types": "^6.22.0"
+ }
+ },
+ "babel-preset-jest": {
+ "version": "19.0.0",
+ "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-19.0.0.tgz",
+ "integrity": "sha1-ItZyAdAjJKGVgRKI6zgpS7PKw5Y=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-jest-hoist": "^19.0.0"
+ }
+ },
+ "babel-preset-react": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-preset-react/-/babel-preset-react-6.24.1.tgz",
+ "integrity": "sha1-umnfrqRfw+xjm2pOzqbhdwLJE4A=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-syntax-jsx": "^6.3.13",
+ "babel-plugin-transform-react-display-name": "^6.23.0",
+ "babel-plugin-transform-react-jsx": "^6.24.1",
+ "babel-plugin-transform-react-jsx-self": "^6.22.0",
+ "babel-plugin-transform-react-jsx-source": "^6.22.0",
+ "babel-preset-flow": "^6.23.0"
+ }
+ },
+ "babel-preset-stage-0": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-preset-stage-0/-/babel-preset-stage-0-6.24.1.tgz",
+ "integrity": "sha1-VkLRUEL5E4TX5a+LyIsduVsDnmo=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-transform-do-expressions": "^6.22.0",
+ "babel-plugin-transform-function-bind": "^6.22.0",
+ "babel-preset-stage-1": "^6.24.1"
+ }
+ },
+ "babel-preset-stage-1": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-preset-stage-1/-/babel-preset-stage-1-6.24.1.tgz",
+ "integrity": "sha1-dpLNfc1oSZB+auSgqFWJz7niv7A=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-transform-class-constructor-call": "^6.24.1",
+ "babel-plugin-transform-export-extensions": "^6.22.0",
+ "babel-preset-stage-2": "^6.24.1"
+ }
+ },
+ "babel-preset-stage-2": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz",
+ "integrity": "sha1-2eKWD7PXEYfw5k7sYrwHdnIZvcE=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-syntax-dynamic-import": "^6.18.0",
+ "babel-plugin-transform-class-properties": "^6.24.1",
+ "babel-plugin-transform-decorators": "^6.24.1",
+ "babel-preset-stage-3": "^6.24.1"
+ }
+ },
+ "babel-preset-stage-3": {
+ "version": "6.24.1",
+ "resolved": "https://registry.npmjs.org/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz",
+ "integrity": "sha1-g2raCp56f6N8sTj7kyb4eTSkg5U=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-syntax-trailing-function-commas": "^6.22.0",
+ "babel-plugin-transform-async-generator-functions": "^6.24.1",
+ "babel-plugin-transform-async-to-generator": "^6.24.1",
+ "babel-plugin-transform-exponentiation-operator": "^6.24.1",
+ "babel-plugin-transform-object-rest-spread": "^6.22.0"
+ }
+ },
+ "babel-register": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz",
+ "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=",
+ "dev": true,
+ "requires": {
+ "babel-core": "^6.26.0",
+ "babel-runtime": "^6.26.0",
+ "core-js": "^2.5.0",
+ "home-or-tmp": "^2.0.0",
+ "lodash": "^4.17.4",
+ "mkdirp": "^0.5.1",
+ "source-map-support": "^0.4.15"
+ }
+ },
+ "babel-runtime": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
+ "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
+ "requires": {
+ "core-js": "^2.4.0",
+ "regenerator-runtime": "^0.11.0"
+ }
+ },
+ "babel-template": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz",
+ "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.26.0",
+ "babel-traverse": "^6.26.0",
+ "babel-types": "^6.26.0",
+ "babylon": "^6.18.0",
+ "lodash": "^4.17.4"
+ }
+ },
+ "babel-traverse": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz",
+ "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=",
+ "dev": true,
+ "requires": {
+ "babel-code-frame": "^6.26.0",
+ "babel-messages": "^6.23.0",
+ "babel-runtime": "^6.26.0",
+ "babel-types": "^6.26.0",
+ "babylon": "^6.18.0",
+ "debug": "^2.6.8",
+ "globals": "^9.18.0",
+ "invariant": "^2.2.2",
+ "lodash": "^4.17.4"
+ }
+ },
+ "babel-types": {
+ "version": "6.26.0",
+ "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz",
+ "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.26.0",
+ "esutils": "^2.0.2",
+ "lodash": "^4.17.4",
+ "to-fast-properties": "^1.0.3"
+ }
+ },
+ "babelify": {
+ "version": "6.4.0",
+ "resolved": "https://registry.npmjs.org/babelify/-/babelify-6.4.0.tgz",
+ "integrity": "sha1-yvQ4iLpzG4drVWe2Q+7MZhR2k6U=",
+ "dev": true,
+ "requires": {
+ "babel-core": "^5.0.0",
+ "object-assign": "^4.0.0"
+ },
+ "dependencies": {
+ "babel-core": {
+ "version": "5.8.38",
+ "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-5.8.38.tgz",
+ "integrity": "sha1-H8ruedfmG3ULALjlT238nQr4ZVg=",
+ "dev": true,
+ "requires": {
+ "babel-plugin-constant-folding": "^1.0.1",
+ "babel-plugin-dead-code-elimination": "^1.0.2",
+ "babel-plugin-eval": "^1.0.1",
+ "babel-plugin-inline-environment-variables": "^1.0.1",
+ "babel-plugin-jscript": "^1.0.4",
+ "babel-plugin-member-expression-literals": "^1.0.1",
+ "babel-plugin-property-literals": "^1.0.1",
+ "babel-plugin-proto-to-assign": "^1.0.3",
+ "babel-plugin-react-constant-elements": "^1.0.3",
+ "babel-plugin-react-display-name": "^1.0.3",
+ "babel-plugin-remove-console": "^1.0.1",
+ "babel-plugin-remove-debugger": "^1.0.1",
+ "babel-plugin-runtime": "^1.0.7",
+ "babel-plugin-undeclared-variables-check": "^1.0.2",
+ "babel-plugin-undefined-to-void": "^1.1.6",
+ "babylon": "^5.8.38",
+ "bluebird": "^2.9.33",
+ "chalk": "^1.0.0",
+ "convert-source-map": "^1.1.0",
+ "core-js": "^1.0.0",
+ "debug": "^2.1.1",
+ "detect-indent": "^3.0.0",
+ "esutils": "^2.0.0",
+ "fs-readdir-recursive": "^0.1.0",
+ "globals": "^6.4.0",
+ "home-or-tmp": "^1.0.0",
+ "is-integer": "^1.0.4",
+ "js-tokens": "1.0.1",
+ "json5": "^0.4.0",
+ "lodash": "^3.10.0",
+ "minimatch": "^2.0.3",
+ "output-file-sync": "^1.1.0",
+ "path-exists": "^1.0.0",
+ "path-is-absolute": "^1.0.0",
+ "private": "^0.1.6",
+ "regenerator": "0.8.40",
+ "regexpu": "^1.3.0",
+ "repeating": "^1.1.2",
+ "resolve": "^1.1.6",
+ "shebang-regex": "^1.0.0",
+ "slash": "^1.0.0",
+ "source-map": "^0.5.0",
+ "source-map-support": "^0.2.10",
+ "to-fast-properties": "^1.0.0",
+ "trim-right": "^1.0.0",
+ "try-resolve": "^1.0.0"
+ }
+ },
+ "babylon": {
+ "version": "5.8.38",
+ "resolved": "https://registry.npmjs.org/babylon/-/babylon-5.8.38.tgz",
+ "integrity": "sha1-7JsSCxG/bM1Bc6GL8hfmC3mFn/0=",
+ "dev": true
+ },
+ "core-js": {
+ "version": "1.2.7",
+ "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz",
+ "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=",
+ "dev": true
+ },
+ "detect-indent": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-3.0.1.tgz",
+ "integrity": "sha1-ncXl3bzu+DJXZLlFGwK8bVQIT3U=",
+ "dev": true,
+ "requires": {
+ "get-stdin": "^4.0.1",
+ "minimist": "^1.1.0",
+ "repeating": "^1.1.0"
+ }
+ },
+ "globals": {
+ "version": "6.4.1",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-6.4.1.tgz",
+ "integrity": "sha1-hJgDKzttHMge68X3lpDY/in6v08=",
+ "dev": true
+ },
+ "home-or-tmp": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-1.0.0.tgz",
+ "integrity": "sha1-S58eQIAMPlDGwn94FnavzOcfOYU=",
+ "dev": true,
+ "requires": {
+ "os-tmpdir": "^1.0.1",
+ "user-home": "^1.1.1"
+ }
+ },
+ "js-tokens": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-1.0.1.tgz",
+ "integrity": "sha1-zENaXIuUrRWst5gxQPyAGCyJrq4=",
+ "dev": true
+ },
+ "json5": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/json5/-/json5-0.4.0.tgz",
+ "integrity": "sha1-BUNS5MTIDIbAkjh31EneF2pzLI0=",
+ "dev": true
+ },
+ "lodash": {
+ "version": "3.10.1",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz",
+ "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=",
+ "dev": true
+ },
+ "minimatch": {
+ "version": "2.0.10",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz",
+ "integrity": "sha1-jQh8OcazjAAbl/ynzm0OHoCvusc=",
+ "dev": true,
+ "requires": {
+ "brace-expansion": "^1.0.0"
+ }
+ },
+ "path-exists": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-1.0.0.tgz",
+ "integrity": "sha1-1aiZjrce83p0w06w2eum6HjuoIE=",
+ "dev": true
+ },
+ "repeating": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/repeating/-/repeating-1.1.3.tgz",
+ "integrity": "sha1-PUEUIYh3U3SU+X93+Xhfq4EPpKw=",
+ "dev": true,
+ "requires": {
+ "is-finite": "^1.0.0"
+ }
+ },
+ "source-map-support": {
+ "version": "0.2.10",
+ "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.2.10.tgz",
+ "integrity": "sha1-6lo5AKHByyUJagrozFwrSxDe09w=",
+ "dev": true,
+ "requires": {
+ "source-map": "0.1.32"
+ },
+ "dependencies": {
+ "source-map": {
+ "version": "0.1.32",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.32.tgz",
+ "integrity": "sha1-yLbBZ3l7pHQKjqMyUhYv8IWRsmY=",
+ "dev": true,
+ "requires": {
+ "amdefine": ">=0.0.4"
+ }
+ }
+ }
+ }
+ }
+ },
+ "babylon": {
+ "version": "6.18.0",
+ "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz",
+ "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==",
+ "dev": true
+ },
+ "balanced-match": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
+ "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
+ "dev": true
+ },
+ "base": {
+ "version": "0.11.2",
+ "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz",
+ "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==",
+ "dev": true,
+ "requires": {
+ "cache-base": "^1.0.1",
+ "class-utils": "^0.3.5",
+ "component-emitter": "^1.2.1",
+ "define-property": "^1.0.0",
+ "isobject": "^3.0.1",
+ "mixin-deep": "^1.2.0",
+ "pascalcase": "^0.1.1"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^1.0.0"
+ }
+ },
+ "is-accessor-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-data-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-descriptor": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
+ "dev": true,
+ "requires": {
+ "is-accessor-descriptor": "^1.0.0",
+ "is-data-descriptor": "^1.0.0",
+ "kind-of": "^6.0.2"
+ }
+ },
+ "kind-of": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
+ "dev": true
+ }
+ }
+ },
+ "base62": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/base62/-/base62-1.2.8.tgz",
+ "integrity": "sha512-V6YHUbjLxN1ymqNLb1DPHoU1CpfdL7d2YTIp5W3U4hhoG4hhxNmsFDs66M9EXxBiSEke5Bt5dwdfMwwZF70iLA==",
+ "dev": true
+ },
+ "base64-js": {
+ "version": "0.0.8",
+ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-0.0.8.tgz",
+ "integrity": "sha1-EQHpVE9KdrG8OybUUsqW16NeeXg=",
+ "dev": true
+ },
+ "batch": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz",
+ "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=",
+ "dev": true
+ },
+ "bcrypt-pbkdf": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
+ "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=",
+ "dev": true,
+ "requires": {
+ "tweetnacl": "^0.14.3"
+ }
+ },
+ "beeper": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/beeper/-/beeper-1.1.1.tgz",
+ "integrity": "sha1-5tXqjF2tABMEpwsiY4RH9pyy+Ak=",
+ "dev": true
+ },
+ "big.js": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz",
+ "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==",
+ "dev": true
+ },
+ "binary-extensions": {
+ "version": "1.13.1",
+ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz",
+ "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==",
+ "dev": true
+ },
+ "bindings": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz",
+ "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "file-uri-to-path": "1.0.0"
+ }
+ },
+ "bluebird": {
+ "version": "2.11.0",
+ "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.11.0.tgz",
+ "integrity": "sha1-U0uQM8AiyVecVro7Plpcqvu2UOE=",
+ "dev": true
+ },
+ "bn.js": {
+ "version": "4.11.8",
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz",
+ "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==",
+ "dev": true
+ },
+ "body-parser": {
+ "version": "1.19.0",
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz",
+ "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==",
+ "dev": true,
+ "requires": {
+ "bytes": "3.1.0",
+ "content-type": "~1.0.4",
+ "debug": "2.6.9",
+ "depd": "~1.1.2",
+ "http-errors": "1.7.2",
+ "iconv-lite": "0.4.24",
+ "on-finished": "~2.3.0",
+ "qs": "6.7.0",
+ "raw-body": "2.4.0",
+ "type-is": "~1.6.17"
+ },
+ "dependencies": {
+ "bytes": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz",
+ "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==",
+ "dev": true
+ },
+ "qs": {
+ "version": "6.7.0",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz",
+ "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==",
+ "dev": true
+ }
+ }
+ },
+ "bootstrap": {
+ "version": "3.3.5",
+ "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-3.3.5.tgz",
+ "integrity": "sha1-F3ereSmbEo2H3OfL2G/cRqxpwLE=",
+ "dev": true
+ },
+ "bowser": {
+ "version": "1.9.4",
+ "resolved": "https://registry.npmjs.org/bowser/-/bowser-1.9.4.tgz",
+ "integrity": "sha512-9IdMmj2KjigRq6oWhmwv1W36pDuA4STQZ8q6YO9um+x07xgYNCD3Oou+WP/3L1HNz7iqythGet3/p4wvc8AAwQ==",
+ "dev": true
+ },
+ "brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "requires": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "braces": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
+ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
+ "dev": true,
+ "requires": {
+ "arr-flatten": "^1.1.0",
+ "array-unique": "^0.3.2",
+ "extend-shallow": "^2.0.1",
+ "fill-range": "^4.0.0",
+ "isobject": "^3.0.1",
+ "repeat-element": "^1.1.2",
+ "snapdragon": "^0.8.1",
+ "snapdragon-node": "^2.0.1",
+ "split-string": "^3.0.2",
+ "to-regex": "^3.0.1"
+ },
+ "dependencies": {
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ }
+ }
+ },
+ "breakable": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/breakable/-/breakable-1.0.0.tgz",
+ "integrity": "sha1-eEp5eRWjjq0nutRWtVcstLuqeME=",
+ "dev": true
+ },
+ "brorand": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
+ "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=",
+ "dev": true
+ },
+ "browser-pack": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/browser-pack/-/browser-pack-5.0.1.tgz",
+ "integrity": "sha1-QZdxmyDG4KqglFHFER5T77b7wY0=",
+ "dev": true,
+ "requires": {
+ "JSONStream": "^1.0.3",
+ "combine-source-map": "~0.6.1",
+ "defined": "^1.0.0",
+ "through2": "^1.0.0",
+ "umd": "^3.0.0"
+ }
+ },
+ "browser-resolve": {
+ "version": "1.11.3",
+ "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz",
+ "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==",
+ "dev": true,
+ "requires": {
+ "resolve": "1.1.7"
+ },
+ "dependencies": {
+ "resolve": {
+ "version": "1.1.7",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz",
+ "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=",
+ "dev": true
+ }
+ }
+ },
+ "browserify": {
+ "version": "11.2.0",
+ "resolved": "https://registry.npmjs.org/browserify/-/browserify-11.2.0.tgz",
+ "integrity": "sha1-oRu53SCdeVcrgT9+7q+Cil9cDk4=",
+ "dev": true,
+ "requires": {
+ "JSONStream": "^1.0.3",
+ "assert": "~1.3.0",
+ "browser-pack": "^5.0.0",
+ "browser-resolve": "^1.7.1",
+ "browserify-zlib": "~0.1.2",
+ "buffer": "^3.0.0",
+ "builtins": "~0.0.3",
+ "commondir": "0.0.1",
+ "concat-stream": "~1.4.1",
+ "console-browserify": "^1.1.0",
+ "constants-browserify": "~0.0.1",
+ "crypto-browserify": "^3.0.0",
+ "defined": "^1.0.0",
+ "deps-sort": "^1.3.7",
+ "domain-browser": "~1.1.0",
+ "duplexer2": "~0.0.2",
+ "events": "~1.0.0",
+ "glob": "^4.0.5",
+ "has": "^1.0.0",
+ "htmlescape": "^1.1.0",
+ "https-browserify": "~0.0.0",
+ "inherits": "~2.0.1",
+ "insert-module-globals": "^6.4.1",
+ "isarray": "0.0.1",
+ "labeled-stream-splicer": "^1.0.0",
+ "module-deps": "^3.7.11",
+ "os-browserify": "~0.1.1",
+ "parents": "^1.0.1",
+ "path-browserify": "~0.0.0",
+ "process": "~0.11.0",
+ "punycode": "^1.3.2",
+ "querystring-es3": "~0.2.0",
+ "read-only-stream": "^1.1.1",
+ "readable-stream": "^2.0.2",
+ "resolve": "^1.1.4",
+ "shasum": "^1.0.0",
+ "shell-quote": "~0.0.1",
+ "stream-browserify": "^2.0.0",
+ "stream-http": "^1.2.0",
+ "string_decoder": "~0.10.0",
+ "subarg": "^1.0.0",
+ "syntax-error": "^1.1.1",
+ "through2": "^1.0.0",
+ "timers-browserify": "^1.0.1",
+ "tty-browserify": "~0.0.0",
+ "url": "~0.10.1",
+ "util": "~0.10.1",
+ "vm-browserify": "~0.0.1",
+ "xtend": "^4.0.0"
+ },
+ "dependencies": {
+ "commondir": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/commondir/-/commondir-0.0.1.tgz",
+ "integrity": "sha1-ifAP3NUbUZxXhzP+xWPmptp/W+I=",
+ "dev": true
+ },
+ "glob": {
+ "version": "4.5.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-4.5.3.tgz",
+ "integrity": "sha1-xstz0yJsHv7wTePFbQEvAzd+4V8=",
+ "dev": true,
+ "requires": {
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^2.0.1",
+ "once": "^1.3.0"
+ }
+ },
+ "minimatch": {
+ "version": "2.0.10",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz",
+ "integrity": "sha1-jQh8OcazjAAbl/ynzm0OHoCvusc=",
+ "dev": true,
+ "requires": {
+ "brace-expansion": "^1.0.0"
+ }
+ }
+ }
+ },
+ "browserify-aes": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
+ "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
+ "dev": true,
+ "requires": {
+ "buffer-xor": "^1.0.3",
+ "cipher-base": "^1.0.0",
+ "create-hash": "^1.1.0",
+ "evp_bytestokey": "^1.0.3",
+ "inherits": "^2.0.1",
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "browserify-cipher": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz",
+ "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==",
+ "dev": true,
+ "requires": {
+ "browserify-aes": "^1.0.4",
+ "browserify-des": "^1.0.0",
+ "evp_bytestokey": "^1.0.0"
+ }
+ },
+ "browserify-des": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz",
+ "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==",
+ "dev": true,
+ "requires": {
+ "cipher-base": "^1.0.1",
+ "des.js": "^1.0.0",
+ "inherits": "^2.0.1",
+ "safe-buffer": "^5.1.2"
+ }
+ },
+ "browserify-rsa": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
+ "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=",
+ "dev": true,
+ "requires": {
+ "bn.js": "^4.1.0",
+ "randombytes": "^2.0.1"
+ }
+ },
+ "browserify-sign": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz",
+ "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=",
+ "dev": true,
+ "requires": {
+ "bn.js": "^4.1.1",
+ "browserify-rsa": "^4.0.0",
+ "create-hash": "^1.1.0",
+ "create-hmac": "^1.1.2",
+ "elliptic": "^6.0.0",
+ "inherits": "^2.0.1",
+ "parse-asn1": "^5.0.0"
+ }
+ },
+ "browserify-zlib": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz",
+ "integrity": "sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0=",
+ "dev": true,
+ "requires": {
+ "pako": "~0.2.0"
+ }
+ },
+ "browserslist": {
+ "version": "1.7.7",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-1.7.7.tgz",
+ "integrity": "sha1-C9dnBCWL6CmyOYu1Dkti0aFmsLk=",
+ "dev": true,
+ "requires": {
+ "caniuse-db": "^1.0.30000639",
+ "electron-to-chromium": "^1.2.7"
+ }
+ },
+ "bser": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz",
+ "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==",
+ "dev": true,
+ "requires": {
+ "node-int64": "^0.4.0"
+ }
+ },
+ "buffer": {
+ "version": "3.6.2",
+ "resolved": "https://registry.npmjs.org/buffer/-/buffer-3.6.2.tgz",
+ "integrity": "sha512-c3M77NkHJxS0zx/ErxXhDLr1v3y2MDXPeTJPvLNOaIYJ4ymHBUFQ9EXzt9HYuqAJllMoNb/EZ8hIiulnQFAUuQ==",
+ "dev": true,
+ "requires": {
+ "base64-js": "0.0.8",
+ "ieee754": "^1.1.4",
+ "isarray": "^1.0.0"
+ },
+ "dependencies": {
+ "isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
+ "dev": true
+ }
+ }
+ },
+ "buffer-from": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
+ "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
+ "dev": true
+ },
+ "buffer-xor": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
+ "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=",
+ "dev": true
+ },
+ "builtin-status-codes": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-1.0.0.tgz",
+ "integrity": "sha1-MGN+4mKXisBxdOFtf4LwrQbgha0=",
+ "dev": true
+ },
+ "builtins": {
+ "version": "0.0.7",
+ "resolved": "https://registry.npmjs.org/builtins/-/builtins-0.0.7.tgz",
+ "integrity": "sha1-NVIZzWzxjb58Acx/0tznZc/cVJo=",
+ "dev": true
+ },
+ "bytes": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
+ "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=",
+ "dev": true
+ },
+ "cache-base": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz",
+ "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==",
+ "dev": true,
+ "requires": {
+ "collection-visit": "^1.0.0",
+ "component-emitter": "^1.2.1",
+ "get-value": "^2.0.6",
+ "has-value": "^1.0.0",
+ "isobject": "^3.0.1",
+ "set-value": "^2.0.0",
+ "to-object-path": "^0.3.0",
+ "union-value": "^1.0.0",
+ "unset-value": "^1.0.0"
+ }
+ },
+ "cached-path-relative": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/cached-path-relative/-/cached-path-relative-1.0.2.tgz",
+ "integrity": "sha512-5r2GqsoEb4qMTTN9J+WzXfjov+hjxT+j3u5K+kIVNIwAd99DLCJE9pBIMP1qVeybV6JiijL385Oz0DcYxfbOIg==",
+ "dev": true
+ },
+ "callsites": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz",
+ "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=",
+ "dev": true
+ },
+ "camelcase": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz",
+ "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=",
+ "dev": true
+ },
+ "camelcase-keys": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
+ "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
+ "dev": true,
+ "requires": {
+ "camelcase": "^2.0.0",
+ "map-obj": "^1.0.0"
+ },
+ "dependencies": {
+ "camelcase": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
+ "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
+ "dev": true
+ }
+ }
+ },
+ "caniuse-api": {
+ "version": "1.6.1",
+ "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-1.6.1.tgz",
+ "integrity": "sha1-tTTnxzTE+B7F++isoq0kNUuWLGw=",
+ "dev": true,
+ "requires": {
+ "browserslist": "^1.3.6",
+ "caniuse-db": "^1.0.30000529",
+ "lodash.memoize": "^4.1.2",
+ "lodash.uniq": "^4.5.0"
+ },
+ "dependencies": {
+ "lodash.memoize": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz",
+ "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=",
+ "dev": true
+ }
+ }
+ },
+ "caniuse-db": {
+ "version": "1.0.30001046",
+ "resolved": "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30001046.tgz",
+ "integrity": "sha512-SNiAsLnpLkqPyWyCZW0N44gTXRUyGh45TX9dif9gzlvbTWzCOP5jrnygvyjsJJvCRhnC9XHq49jX/IO2p0mVZw==",
+ "dev": true
+ },
+ "caseless": {
+ "version": "0.12.0",
+ "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
+ "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=",
+ "dev": true
+ },
+ "center-align": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz",
+ "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=",
+ "dev": true,
+ "requires": {
+ "align-text": "^0.1.3",
+ "lazy-cache": "^1.0.3"
+ }
+ },
+ "chalk": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
+ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^2.2.1",
+ "escape-string-regexp": "^1.0.2",
+ "has-ansi": "^2.0.0",
+ "strip-ansi": "^3.0.0",
+ "supports-color": "^2.0.0"
+ }
+ },
+ "chokidar": {
+ "version": "2.1.8",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz",
+ "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==",
+ "dev": true,
+ "requires": {
+ "anymatch": "^2.0.0",
+ "async-each": "^1.0.1",
+ "braces": "^2.3.2",
+ "fsevents": "^1.2.7",
+ "glob-parent": "^3.1.0",
+ "inherits": "^2.0.3",
+ "is-binary-path": "^1.0.0",
+ "is-glob": "^4.0.0",
+ "normalize-path": "^3.0.0",
+ "path-is-absolute": "^1.0.0",
+ "readdirp": "^2.2.1",
+ "upath": "^1.1.1"
+ },
+ "dependencies": {
+ "anymatch": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
+ "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
+ "dev": true,
+ "requires": {
+ "micromatch": "^3.1.4",
+ "normalize-path": "^2.1.1"
+ },
+ "dependencies": {
+ "normalize-path": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
+ "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
+ "dev": true,
+ "requires": {
+ "remove-trailing-separator": "^1.0.1"
+ }
+ }
+ }
+ },
+ "glob-parent": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
+ "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
+ "dev": true,
+ "requires": {
+ "is-glob": "^3.1.0",
+ "path-dirname": "^1.0.0"
+ },
+ "dependencies": {
+ "is-glob": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
+ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^2.1.0"
+ }
+ }
+ }
+ },
+ "is-glob": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
+ "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^2.1.1"
+ }
+ },
+ "normalize-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
+ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
+ "dev": true
+ }
+ }
+ },
+ "ci-info": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz",
+ "integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==",
+ "dev": true
+ },
+ "cipher-base": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz",
+ "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.1",
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "circular-json": {
+ "version": "0.3.3",
+ "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz",
+ "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==",
+ "dev": true
+ },
+ "clap": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/clap/-/clap-1.2.3.tgz",
+ "integrity": "sha512-4CoL/A3hf90V3VIEjeuhSvlGFEHKzOz+Wfc2IVZc+FaUgU0ZQafJTP49fvnULipOPcAfqhyI2duwQyns6xqjYA==",
+ "dev": true,
+ "requires": {
+ "chalk": "^1.1.3"
+ }
+ },
+ "class-utils": {
+ "version": "0.3.6",
+ "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
+ "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
+ "dev": true,
+ "requires": {
+ "arr-union": "^3.1.0",
+ "define-property": "^0.2.5",
+ "isobject": "^3.0.0",
+ "static-extend": "^0.1.1"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^0.1.0"
+ }
+ }
+ }
+ },
+ "classnames": {
+ "version": "2.2.6",
+ "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.2.6.tgz",
+ "integrity": "sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q=="
+ },
+ "clean-css": {
+ "version": "3.4.28",
+ "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-3.4.28.tgz",
+ "integrity": "sha1-vxlF6C/ICPVWlebd6uwBQA79A/8=",
+ "dev": true,
+ "requires": {
+ "commander": "2.8.x",
+ "source-map": "0.4.x"
+ },
+ "dependencies": {
+ "commander": {
+ "version": "2.8.1",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz",
+ "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=",
+ "dev": true,
+ "requires": {
+ "graceful-readlink": ">= 1.0.0"
+ }
+ },
+ "source-map": {
+ "version": "0.4.4",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
+ "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
+ "dev": true,
+ "requires": {
+ "amdefine": ">=0.0.4"
+ }
+ }
+ }
+ },
+ "cli-width": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-1.1.1.tgz",
+ "integrity": "sha1-pNKT72frt7iNSk1CwMzwDE0eNm0=",
+ "dev": true
+ },
+ "cliui": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz",
+ "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=",
+ "dev": true,
+ "requires": {
+ "center-align": "^0.1.1",
+ "right-align": "^0.1.1",
+ "wordwrap": "0.0.2"
+ }
+ },
+ "clone": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz",
+ "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=",
+ "dev": true
+ },
+ "clone-stats": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz",
+ "integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=",
+ "dev": true
+ },
+ "coa": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/coa/-/coa-1.0.4.tgz",
+ "integrity": "sha1-qe8VNmDWqGqL3sAomlxoTSF0Mv0=",
+ "dev": true,
+ "requires": {
+ "q": "^1.1.2"
+ }
+ },
+ "code-point-at": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
+ "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
+ "dev": true
+ },
+ "collection-visit": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz",
+ "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=",
+ "dev": true,
+ "requires": {
+ "map-visit": "^1.0.0",
+ "object-visit": "^1.0.0"
+ }
+ },
+ "color": {
+ "version": "0.11.4",
+ "resolved": "https://registry.npmjs.org/color/-/color-0.11.4.tgz",
+ "integrity": "sha1-bXtcdPtl6EHNSHkq0e1eB7kE12Q=",
+ "dev": true,
+ "requires": {
+ "clone": "^1.0.2",
+ "color-convert": "^1.3.0",
+ "color-string": "^0.3.0"
+ }
+ },
+ "color-convert": {
+ "version": "1.9.3",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
+ "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
+ "dev": true,
+ "requires": {
+ "color-name": "1.1.3"
+ }
+ },
+ "color-name": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
+ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
+ "dev": true
+ },
+ "color-string": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/color-string/-/color-string-0.3.0.tgz",
+ "integrity": "sha1-J9RvtnAlxcL6JZk7+/V55HhBuZE=",
+ "dev": true,
+ "requires": {
+ "color-name": "^1.0.0"
+ }
+ },
+ "color-support": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz",
+ "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==",
+ "dev": true
+ },
+ "colormin": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/colormin/-/colormin-1.1.2.tgz",
+ "integrity": "sha1-6i90IKcrlogaOKrlnsEkpvcpgTM=",
+ "dev": true,
+ "requires": {
+ "color": "^0.11.0",
+ "css-color-names": "0.0.4",
+ "has": "^1.0.1"
+ }
+ },
+ "colors": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz",
+ "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=",
+ "dev": true
+ },
+ "combine-source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.6.1.tgz",
+ "integrity": "sha1-m0oJwxYDPXaODxHgKfonMOB5rZY=",
+ "dev": true,
+ "requires": {
+ "convert-source-map": "~1.1.0",
+ "inline-source-map": "~0.5.0",
+ "lodash.memoize": "~3.0.3",
+ "source-map": "~0.4.2"
+ },
+ "dependencies": {
+ "convert-source-map": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz",
+ "integrity": "sha1-SCnId+n+SbMWHzvzZziI4gRpmGA=",
+ "dev": true
+ },
+ "source-map": {
+ "version": "0.4.4",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
+ "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
+ "dev": true,
+ "requires": {
+ "amdefine": ">=0.0.4"
+ }
+ }
+ }
+ },
+ "combined-stream": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
+ "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
+ "dev": true,
+ "requires": {
+ "delayed-stream": "~1.0.0"
+ }
+ },
+ "commander": {
+ "version": "2.20.3",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
+ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
+ "dev": true
+ },
+ "commondir": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
+ "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=",
+ "dev": true
+ },
+ "commoner": {
+ "version": "0.10.8",
+ "resolved": "https://registry.npmjs.org/commoner/-/commoner-0.10.8.tgz",
+ "integrity": "sha1-NPw2cs0kOT6LtH5wyqApOBH08sU=",
+ "dev": true,
+ "requires": {
+ "commander": "^2.5.0",
+ "detective": "^4.3.1",
+ "glob": "^5.0.15",
+ "graceful-fs": "^4.1.2",
+ "iconv-lite": "^0.4.5",
+ "mkdirp": "^0.5.0",
+ "private": "^0.1.6",
+ "q": "^1.1.2",
+ "recast": "^0.11.17"
+ },
+ "dependencies": {
+ "esprima": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz",
+ "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=",
+ "dev": true
+ },
+ "recast": {
+ "version": "0.11.23",
+ "resolved": "https://registry.npmjs.org/recast/-/recast-0.11.23.tgz",
+ "integrity": "sha1-RR/TAEqx5N+bTktmN2sqIZEkYtM=",
+ "dev": true,
+ "requires": {
+ "ast-types": "0.9.6",
+ "esprima": "~3.1.0",
+ "private": "~0.1.5",
+ "source-map": "~0.5.0"
+ }
+ }
+ }
+ },
+ "component-emitter": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz",
+ "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==",
+ "dev": true
+ },
+ "compressible": {
+ "version": "2.0.18",
+ "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz",
+ "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==",
+ "dev": true,
+ "requires": {
+ "mime-db": ">= 1.43.0 < 2"
+ }
+ },
+ "compression": {
+ "version": "1.7.4",
+ "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz",
+ "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==",
+ "dev": true,
+ "requires": {
+ "accepts": "~1.3.5",
+ "bytes": "3.0.0",
+ "compressible": "~2.0.16",
+ "debug": "2.6.9",
+ "on-headers": "~1.0.2",
+ "safe-buffer": "5.1.2",
+ "vary": "~1.1.2"
+ }
+ },
+ "concat-map": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
+ "dev": true
+ },
+ "concat-stream": {
+ "version": "1.4.11",
+ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.4.11.tgz",
+ "integrity": "sha512-X3JMh8+4je3U1cQpG87+f9lXHDrqcb2MVLg9L7o8b1UZ0DzhRrUpdn65ttzu10PpJPPI3MQNkis+oha6TSA9Mw==",
+ "dev": true,
+ "requires": {
+ "inherits": "~2.0.1",
+ "readable-stream": "~1.1.9",
+ "typedarray": "~0.0.5"
+ },
+ "dependencies": {
+ "readable-stream": {
+ "version": "1.1.14",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
+ "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
+ "dev": true,
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.1",
+ "isarray": "0.0.1",
+ "string_decoder": "~0.10.x"
+ }
+ }
+ }
+ },
+ "connect-history-api-fallback": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz",
+ "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==",
+ "dev": true
+ },
+ "console-browserify": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz",
+ "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==",
+ "dev": true
+ },
+ "constants-browserify": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-0.0.1.tgz",
+ "integrity": "sha1-kld9tSe6bEzwpFaNhLwDH0QeIfI=",
+ "dev": true
+ },
+ "content-disposition": {
+ "version": "0.5.3",
+ "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz",
+ "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==",
+ "dev": true,
+ "requires": {
+ "safe-buffer": "5.1.2"
+ }
+ },
+ "content-type": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
+ "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==",
+ "dev": true
+ },
+ "content-type-parser": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/content-type-parser/-/content-type-parser-1.0.2.tgz",
+ "integrity": "sha512-lM4l4CnMEwOLHAHr/P6MEZwZFPJFtAAKgL6pogbXmVZggIqXhdB6RbBtPOTsw2FcXwYhehRGERJmRrjOiIB8pQ==",
+ "dev": true
+ },
+ "convert-source-map": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz",
+ "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==",
+ "dev": true,
+ "requires": {
+ "safe-buffer": "~5.1.1"
+ }
+ },
+ "cookie": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz",
+ "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==",
+ "dev": true
+ },
+ "cookie-signature": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
+ "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=",
+ "dev": true
+ },
+ "copy-descriptor": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
+ "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=",
+ "dev": true
+ },
+ "core-js": {
+ "version": "2.6.11",
+ "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz",
+ "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg=="
+ },
+ "core-util-is": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
+ "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
+ "dev": true
+ },
+ "create-ecdh": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz",
+ "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==",
+ "dev": true,
+ "requires": {
+ "bn.js": "^4.1.0",
+ "elliptic": "^6.0.0"
+ }
+ },
+ "create-hash": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
+ "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
+ "dev": true,
+ "requires": {
+ "cipher-base": "^1.0.1",
+ "inherits": "^2.0.1",
+ "md5.js": "^1.3.4",
+ "ripemd160": "^2.0.1",
+ "sha.js": "^2.4.0"
+ }
+ },
+ "create-hmac": {
+ "version": "1.1.7",
+ "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
+ "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
+ "dev": true,
+ "requires": {
+ "cipher-base": "^1.0.3",
+ "create-hash": "^1.1.0",
+ "inherits": "^2.0.1",
+ "ripemd160": "^2.0.0",
+ "safe-buffer": "^5.0.1",
+ "sha.js": "^2.4.8"
+ }
+ },
+ "create-react-class": {
+ "version": "15.6.3",
+ "resolved": "https://registry.npmjs.org/create-react-class/-/create-react-class-15.6.3.tgz",
+ "integrity": "sha512-M+/3Q6E6DLO6Yx3OwrWjwHBnvfXXYA7W+dFjt/ZDBemHO1DDZhsalX/NUtnTYclN6GfnBDRh4qRHjcDHmlJBJg==",
+ "dev": true,
+ "requires": {
+ "fbjs": "^0.8.9",
+ "loose-envify": "^1.3.1",
+ "object-assign": "^4.1.1"
+ }
+ },
+ "crypto-browserify": {
+ "version": "3.12.0",
+ "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz",
+ "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==",
+ "dev": true,
+ "requires": {
+ "browserify-cipher": "^1.0.0",
+ "browserify-sign": "^4.0.0",
+ "create-ecdh": "^4.0.0",
+ "create-hash": "^1.1.0",
+ "create-hmac": "^1.1.0",
+ "diffie-hellman": "^5.0.0",
+ "inherits": "^2.0.1",
+ "pbkdf2": "^3.0.3",
+ "public-encrypt": "^4.0.0",
+ "randombytes": "^2.0.0",
+ "randomfill": "^1.0.3"
+ }
+ },
+ "css": {
+ "version": "2.2.4",
+ "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz",
+ "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.3",
+ "source-map": "^0.6.1",
+ "source-map-resolve": "^0.5.2",
+ "urix": "^0.1.0"
+ },
+ "dependencies": {
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true
+ }
+ }
+ },
+ "css-color-list": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/css-color-list/-/css-color-list-0.0.1.tgz",
+ "integrity": "sha1-hxjoaVrnosyHh76HFfHACKfyixU=",
+ "dev": true,
+ "requires": {
+ "css-color-names": "0.0.1"
+ },
+ "dependencies": {
+ "css-color-names": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.1.tgz",
+ "integrity": "sha1-XQVI+iVkVu3kqaDCrHqxnT6xrYE=",
+ "dev": true
+ }
+ }
+ },
+ "css-color-names": {
+ "version": "0.0.4",
+ "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz",
+ "integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=",
+ "dev": true
+ },
+ "css-loader": {
+ "version": "0.21.0",
+ "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-0.21.0.tgz",
+ "integrity": "sha1-UDNbIxFS30RmPztUvWLiTzyNZuw=",
+ "dev": true,
+ "requires": {
+ "css-selector-tokenizer": "^0.5.1",
+ "cssnano": ">=2.6.1 <4",
+ "loader-utils": "~0.2.2",
+ "lodash.camelcase": "^3.0.1",
+ "object-assign": "^4.0.1",
+ "postcss": "^5.0.6",
+ "postcss-modules-extract-imports": "1.0.0-beta2",
+ "postcss-modules-local-by-default": "^1.0.0",
+ "postcss-modules-scope": "1.0.0-beta2",
+ "postcss-modules-values": "^1.1.0",
+ "source-list-map": "^0.1.4"
+ }
+ },
+ "css-selector-tokenizer": {
+ "version": "0.5.4",
+ "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.5.4.tgz",
+ "integrity": "sha1-E5uv00o1/QwUKEhwSeBpnm9qLCE=",
+ "dev": true,
+ "requires": {
+ "cssesc": "^0.1.0",
+ "fastparse": "^1.1.1"
+ }
+ },
+ "css-to-react-native": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-1.0.6.tgz",
+ "integrity": "sha1-cox+d05WU2VYoOyqmQ2VB8Q6SsQ=",
+ "dev": true,
+ "requires": {
+ "css-color-list": "0.0.1",
+ "fbjs": "^0.8.5",
+ "nearley": "^2.7.7"
+ }
+ },
+ "cssesc": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-0.1.0.tgz",
+ "integrity": "sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=",
+ "dev": true
+ },
+ "cssnano": {
+ "version": "3.10.0",
+ "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-3.10.0.tgz",
+ "integrity": "sha1-Tzj2zqK5sX+gFJDyPx3GjqZcHDg=",
+ "dev": true,
+ "requires": {
+ "autoprefixer": "^6.3.1",
+ "decamelize": "^1.1.2",
+ "defined": "^1.0.0",
+ "has": "^1.0.1",
+ "object-assign": "^4.0.1",
+ "postcss": "^5.0.14",
+ "postcss-calc": "^5.2.0",
+ "postcss-colormin": "^2.1.8",
+ "postcss-convert-values": "^2.3.4",
+ "postcss-discard-comments": "^2.0.4",
+ "postcss-discard-duplicates": "^2.0.1",
+ "postcss-discard-empty": "^2.0.1",
+ "postcss-discard-overridden": "^0.1.1",
+ "postcss-discard-unused": "^2.2.1",
+ "postcss-filter-plugins": "^2.0.0",
+ "postcss-merge-idents": "^2.1.5",
+ "postcss-merge-longhand": "^2.0.1",
+ "postcss-merge-rules": "^2.0.3",
+ "postcss-minify-font-values": "^1.0.2",
+ "postcss-minify-gradients": "^1.0.1",
+ "postcss-minify-params": "^1.0.4",
+ "postcss-minify-selectors": "^2.0.4",
+ "postcss-normalize-charset": "^1.1.0",
+ "postcss-normalize-url": "^3.0.7",
+ "postcss-ordered-values": "^2.1.0",
+ "postcss-reduce-idents": "^2.2.2",
+ "postcss-reduce-initial": "^1.0.0",
+ "postcss-reduce-transforms": "^1.0.3",
+ "postcss-svgo": "^2.1.1",
+ "postcss-unique-selectors": "^2.0.2",
+ "postcss-value-parser": "^3.2.3",
+ "postcss-zindex": "^2.0.1"
+ }
+ },
+ "csso": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/csso/-/csso-2.3.2.tgz",
+ "integrity": "sha1-3dUsWHAz9J6Utx/FVWnyUuj/X4U=",
+ "dev": true,
+ "requires": {
+ "clap": "^1.0.9",
+ "source-map": "^0.5.3"
+ }
+ },
+ "cssom": {
+ "version": "0.3.8",
+ "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz",
+ "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==",
+ "dev": true
+ },
+ "cssstyle": {
+ "version": "0.2.37",
+ "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-0.2.37.tgz",
+ "integrity": "sha1-VBCXI0yyUTyDzu06zdwn/yeYfVQ=",
+ "dev": true,
+ "requires": {
+ "cssom": "0.3.x"
+ }
+ },
+ "currently-unhandled": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
+ "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
+ "dev": true,
+ "requires": {
+ "array-find-index": "^1.0.1"
+ }
+ },
+ "d": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz",
+ "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==",
+ "dev": true,
+ "requires": {
+ "es5-ext": "^0.10.50",
+ "type": "^1.0.1"
+ }
+ },
+ "dash-ast": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/dash-ast/-/dash-ast-1.0.0.tgz",
+ "integrity": "sha512-Vy4dx7gquTeMcQR/hDkYLGUnwVil6vk4FOOct+djUnHOUWt+zJPJAaRIXaAFkPXtJjvlY7o3rfRu0/3hpnwoUA==",
+ "dev": true
+ },
+ "dashdash": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
+ "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
+ "dev": true,
+ "requires": {
+ "assert-plus": "^1.0.0"
+ }
+ },
+ "dateformat": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-2.2.0.tgz",
+ "integrity": "sha1-QGXiATz5+5Ft39gu+1Bq1MZ2kGI=",
+ "dev": true
+ },
+ "debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
+ "requires": {
+ "ms": "2.0.0"
+ }
+ },
+ "decamelize": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
+ "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
+ "dev": true
+ },
+ "decode-uri-component": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz",
+ "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=",
+ "dev": true
+ },
+ "deep-is": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
+ "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
+ "dev": true
+ },
+ "default-require-extensions": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-1.0.0.tgz",
+ "integrity": "sha1-836hXT4T/9m0N9M+GnW1+5eHTLg=",
+ "dev": true,
+ "requires": {
+ "strip-bom": "^2.0.0"
+ },
+ "dependencies": {
+ "strip-bom": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
+ "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
+ "dev": true,
+ "requires": {
+ "is-utf8": "^0.2.0"
+ }
+ }
+ }
+ },
+ "defaults": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz",
+ "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=",
+ "dev": true,
+ "requires": {
+ "clone": "^1.0.2"
+ }
+ },
+ "define-property": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
+ "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^1.0.2",
+ "isobject": "^3.0.1"
+ },
+ "dependencies": {
+ "is-accessor-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-data-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-descriptor": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
+ "dev": true,
+ "requires": {
+ "is-accessor-descriptor": "^1.0.0",
+ "is-data-descriptor": "^1.0.0",
+ "kind-of": "^6.0.2"
+ }
+ },
+ "kind-of": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
+ "dev": true
+ }
+ }
+ },
+ "defined": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
+ "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=",
+ "dev": true
+ },
+ "defs": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/defs/-/defs-1.1.1.tgz",
+ "integrity": "sha1-siYJ8sehG6ej2xFoBcE5scr/qdI=",
+ "dev": true,
+ "requires": {
+ "alter": "~0.2.0",
+ "ast-traverse": "~0.1.1",
+ "breakable": "~1.0.0",
+ "esprima-fb": "~15001.1001.0-dev-harmony-fb",
+ "simple-fmt": "~0.1.0",
+ "simple-is": "~0.2.0",
+ "stringmap": "~0.2.2",
+ "stringset": "~0.2.1",
+ "tryor": "~0.1.2",
+ "yargs": "~3.27.0"
+ }
+ },
+ "del": {
+ "version": "2.2.2",
+ "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz",
+ "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=",
+ "dev": true,
+ "requires": {
+ "globby": "^5.0.0",
+ "is-path-cwd": "^1.0.0",
+ "is-path-in-cwd": "^1.0.0",
+ "object-assign": "^4.0.1",
+ "pify": "^2.0.0",
+ "pinkie-promise": "^2.0.0",
+ "rimraf": "^2.2.8"
+ }
+ },
+ "delayed-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+ "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
+ "dev": true
+ },
+ "depd": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
+ "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=",
+ "dev": true
+ },
+ "deprecated": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/deprecated/-/deprecated-0.0.1.tgz",
+ "integrity": "sha1-+cmvVGSvoeepcUWKi97yqpTVuxk=",
+ "dev": true
+ },
+ "deps-sort": {
+ "version": "1.3.9",
+ "resolved": "https://registry.npmjs.org/deps-sort/-/deps-sort-1.3.9.tgz",
+ "integrity": "sha1-Kd//U+F7Nq7K51MK27v2IsLtGnE=",
+ "dev": true,
+ "requires": {
+ "JSONStream": "^1.0.3",
+ "shasum": "^1.0.0",
+ "subarg": "^1.0.0",
+ "through2": "^1.0.0"
+ }
+ },
+ "des.js": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz",
+ "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.1",
+ "minimalistic-assert": "^1.0.0"
+ }
+ },
+ "destroy": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
+ "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=",
+ "dev": true
+ },
+ "detect-file": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz",
+ "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=",
+ "dev": true
+ },
+ "detect-indent": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz",
+ "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=",
+ "dev": true,
+ "requires": {
+ "repeating": "^2.0.0"
+ }
+ },
+ "detective": {
+ "version": "4.7.1",
+ "resolved": "https://registry.npmjs.org/detective/-/detective-4.7.1.tgz",
+ "integrity": "sha512-H6PmeeUcZloWtdt4DAkFyzFL94arpHr3NOwwmVILFiy+9Qd4JTxxXrzfyGk/lmct2qVGBwTSwSXagqu2BxmWig==",
+ "dev": true,
+ "requires": {
+ "acorn": "^5.2.1",
+ "defined": "^1.0.0"
+ }
+ },
+ "diff": {
+ "version": "3.5.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz",
+ "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==",
+ "dev": true
+ },
+ "diffie-hellman": {
+ "version": "5.0.3",
+ "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
+ "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
+ "dev": true,
+ "requires": {
+ "bn.js": "^4.1.0",
+ "miller-rabin": "^4.0.0",
+ "randombytes": "^2.0.0"
+ }
+ },
+ "discontinuous-range": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/discontinuous-range/-/discontinuous-range-1.0.0.tgz",
+ "integrity": "sha1-44Mx8IRLukm5qctxx3FYWqsbxlo=",
+ "dev": true
+ },
+ "doctrine": {
+ "version": "0.7.2",
+ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-0.7.2.tgz",
+ "integrity": "sha1-fLhgNZujvpDgQLJrcpzkv6ZUxSM=",
+ "dev": true,
+ "requires": {
+ "esutils": "^1.1.6",
+ "isarray": "0.0.1"
+ },
+ "dependencies": {
+ "esutils": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/esutils/-/esutils-1.1.6.tgz",
+ "integrity": "sha1-wBzKqa5LiXxtDD4hCuUvPHqEQ3U=",
+ "dev": true
+ }
+ }
+ },
+ "dom-helpers": {
+ "version": "3.4.0",
+ "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.4.0.tgz",
+ "integrity": "sha512-LnuPJ+dwqKDIyotW1VzmOZ5TONUN7CwkCR5hrgawTUbkBGYdeoNLZo6nNfGkCrjtE1nXXaj7iMMpDa8/d9WoIA==",
+ "dev": true,
+ "requires": {
+ "@babel/runtime": "^7.1.2"
+ }
+ },
+ "dom-walk": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz",
+ "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==",
+ "dev": true
+ },
+ "domain-browser": {
+ "version": "1.1.7",
+ "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.1.7.tgz",
+ "integrity": "sha1-hnqksJP6oF8d4IwG9NeyH9+GmLw=",
+ "dev": true
+ },
+ "duplexer2": {
+ "version": "0.0.2",
+ "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz",
+ "integrity": "sha1-xhTc9n4vsUmVqRcR5aYX6KYKMds=",
+ "dev": true,
+ "requires": {
+ "readable-stream": "~1.1.9"
+ },
+ "dependencies": {
+ "readable-stream": {
+ "version": "1.1.14",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
+ "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
+ "dev": true,
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.1",
+ "isarray": "0.0.1",
+ "string_decoder": "~0.10.x"
+ }
+ }
+ }
+ },
+ "ecc-jsbn": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
+ "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=",
+ "dev": true,
+ "requires": {
+ "jsbn": "~0.1.0",
+ "safer-buffer": "^2.1.0"
+ }
+ },
+ "ee-first": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
+ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=",
+ "dev": true
+ },
+ "electron-to-chromium": {
+ "version": "1.3.415",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.415.tgz",
+ "integrity": "sha512-GbtYqKffx3sU8G0HxwXuJFfs58Q7+iwLa5rBwaULwET6jWW8IAQSrVnu7vEfiUIcMVfbYyFg7cw3zdm+EbBJmw==",
+ "dev": true
+ },
+ "elliptic": {
+ "version": "6.5.2",
+ "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.2.tgz",
+ "integrity": "sha512-f4x70okzZbIQl/NSRLkI/+tteV/9WqL98zx+SQ69KbXxmVrmjwsNUPn/gYJJ0sHvEak24cZgHIPegRePAtA/xw==",
+ "dev": true,
+ "requires": {
+ "bn.js": "^4.4.0",
+ "brorand": "^1.0.1",
+ "hash.js": "^1.0.0",
+ "hmac-drbg": "^1.0.0",
+ "inherits": "^2.0.1",
+ "minimalistic-assert": "^1.0.0",
+ "minimalistic-crypto-utils": "^1.0.0"
+ }
+ },
+ "emojis-list": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz",
+ "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=",
+ "dev": true
+ },
+ "encodeurl": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
+ "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=",
+ "dev": true
+ },
+ "encoding": {
+ "version": "0.1.12",
+ "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz",
+ "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=",
+ "dev": true,
+ "requires": {
+ "iconv-lite": "~0.4.13"
+ }
+ },
+ "end-of-stream": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-0.1.5.tgz",
+ "integrity": "sha1-jhdyBsPICDfYVjLouTWd/osvbq8=",
+ "dev": true,
+ "requires": {
+ "once": "~1.3.0"
+ },
+ "dependencies": {
+ "once": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz",
+ "integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=",
+ "dev": true,
+ "requires": {
+ "wrappy": "1"
+ }
+ }
+ }
+ },
+ "enhanced-resolve": {
+ "version": "0.9.1",
+ "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-0.9.1.tgz",
+ "integrity": "sha1-TW5omzcl+GCQknzMhs2fFjW4ni4=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.2",
+ "memory-fs": "^0.2.0",
+ "tapable": "^0.1.8"
+ },
+ "dependencies": {
+ "memory-fs": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.2.0.tgz",
+ "integrity": "sha1-8rslNovBIeORwlIN6Slpyu4KApA=",
+ "dev": true
+ }
+ }
+ },
+ "errno": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz",
+ "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==",
+ "dev": true,
+ "requires": {
+ "prr": "~1.0.1"
+ }
+ },
+ "error-ex": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
+ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
+ "dev": true,
+ "requires": {
+ "is-arrayish": "^0.2.1"
+ }
+ },
+ "error-stack-parser": {
+ "version": "1.3.6",
+ "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-1.3.6.tgz",
+ "integrity": "sha1-4Oc7k+QXE40c18C3RrGkoUhUwpI=",
+ "dev": true,
+ "requires": {
+ "stackframe": "^0.3.1"
+ }
+ },
+ "es5-ext": {
+ "version": "0.10.53",
+ "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz",
+ "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==",
+ "dev": true,
+ "requires": {
+ "es6-iterator": "~2.0.3",
+ "es6-symbol": "~3.1.3",
+ "next-tick": "~1.0.0"
+ }
+ },
+ "es6-iterator": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz",
+ "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=",
+ "dev": true,
+ "requires": {
+ "d": "1",
+ "es5-ext": "^0.10.35",
+ "es6-symbol": "^3.1.1"
+ }
+ },
+ "es6-map": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz",
+ "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=",
+ "dev": true,
+ "requires": {
+ "d": "1",
+ "es5-ext": "~0.10.14",
+ "es6-iterator": "~2.0.1",
+ "es6-set": "~0.1.5",
+ "es6-symbol": "~3.1.1",
+ "event-emitter": "~0.3.5"
+ }
+ },
+ "es6-set": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz",
+ "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=",
+ "dev": true,
+ "requires": {
+ "d": "1",
+ "es5-ext": "~0.10.14",
+ "es6-iterator": "~2.0.1",
+ "es6-symbol": "3.1.1",
+ "event-emitter": "~0.3.5"
+ },
+ "dependencies": {
+ "es6-symbol": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz",
+ "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=",
+ "dev": true,
+ "requires": {
+ "d": "1",
+ "es5-ext": "~0.10.14"
+ }
+ }
+ }
+ },
+ "es6-symbol": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz",
+ "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==",
+ "dev": true,
+ "requires": {
+ "d": "^1.0.1",
+ "ext": "^1.1.2"
+ }
+ },
+ "es6-weak-map": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz",
+ "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==",
+ "dev": true,
+ "requires": {
+ "d": "1",
+ "es5-ext": "^0.10.46",
+ "es6-iterator": "^2.0.3",
+ "es6-symbol": "^3.1.1"
+ }
+ },
+ "escape-html": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
+ "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=",
+ "dev": true
+ },
+ "escape-string-regexp": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
+ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
+ "dev": true
+ },
+ "escodegen": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.1.tgz",
+ "integrity": "sha512-Bmt7NcRySdIfNPfU2ZoXDrrXsG9ZjvDxcAlMfDUgRBjLOWTuIACXPBFJH7Z+cLb40JeQco5toikyc9t9P8E9SQ==",
+ "dev": true,
+ "requires": {
+ "esprima": "^4.0.1",
+ "estraverse": "^4.2.0",
+ "esutils": "^2.0.2",
+ "optionator": "^0.8.1",
+ "source-map": "~0.6.1"
+ },
+ "dependencies": {
+ "esprima": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
+ "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
+ "dev": true
+ },
+ "fast-levenshtein": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
+ "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
+ "dev": true
+ },
+ "levn": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
+ "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
+ "dev": true,
+ "requires": {
+ "prelude-ls": "~1.1.2",
+ "type-check": "~0.3.2"
+ }
+ },
+ "optionator": {
+ "version": "0.8.3",
+ "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
+ "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
+ "dev": true,
+ "requires": {
+ "deep-is": "~0.1.3",
+ "fast-levenshtein": "~2.0.6",
+ "levn": "~0.3.0",
+ "prelude-ls": "~1.1.2",
+ "type-check": "~0.3.2",
+ "word-wrap": "~1.2.3"
+ }
+ },
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "optional": true
+ }
+ }
+ },
+ "escope": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz",
+ "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=",
+ "dev": true,
+ "requires": {
+ "es6-map": "^0.1.3",
+ "es6-weak-map": "^2.0.1",
+ "esrecurse": "^4.1.0",
+ "estraverse": "^4.1.1"
+ }
+ },
+ "eslint": {
+ "version": "1.7.3",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-1.7.3.tgz",
+ "integrity": "sha1-tB9cMfqJGhyybJoIgxlm47Tqzes=",
+ "dev": true,
+ "requires": {
+ "chalk": "^1.0.0",
+ "concat-stream": "^1.4.6",
+ "debug": "^2.1.1",
+ "doctrine": "^0.7.0",
+ "escape-string-regexp": "^1.0.2",
+ "escope": "^3.2.0",
+ "espree": "^2.2.4",
+ "estraverse": "^4.1.0",
+ "estraverse-fb": "^1.3.1",
+ "esutils": "^2.0.2",
+ "file-entry-cache": "^1.1.1",
+ "glob": "^5.0.14",
+ "globals": "^8.11.0",
+ "handlebars": "^4.0.0",
+ "inquirer": "^0.9.0",
+ "is-my-json-valid": "^2.10.0",
+ "is-resolvable": "^1.0.0",
+ "js-yaml": "^3.2.5",
+ "json-stable-stringify": "^1.0.0",
+ "lodash.clonedeep": "^3.0.1",
+ "lodash.merge": "^3.3.2",
+ "lodash.omit": "^3.1.0",
+ "minimatch": "^2.0.1",
+ "mkdirp": "^0.5.0",
+ "object-assign": "^2.0.0",
+ "optionator": "^0.5.0",
+ "path-is-absolute": "^1.0.0",
+ "path-is-inside": "^1.0.1",
+ "shelljs": "^0.3.0",
+ "strip-json-comments": "~1.0.1",
+ "text-table": "~0.2.0",
+ "to-double-quotes": "^1.0.1",
+ "to-single-quotes": "^1.0.3",
+ "user-home": "^1.0.0",
+ "xml-escape": "~1.0.0"
+ },
+ "dependencies": {
+ "espree": {
+ "version": "2.2.5",
+ "resolved": "https://registry.npmjs.org/espree/-/espree-2.2.5.tgz",
+ "integrity": "sha1-32kbkxCIlAKuspzAZnCMVmkLhUs=",
+ "dev": true
+ },
+ "globals": {
+ "version": "8.18.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-8.18.0.tgz",
+ "integrity": "sha1-k9SmK9ysOM+vr8R9awNHaMsP/LQ=",
+ "dev": true
+ },
+ "json-stable-stringify": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz",
+ "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=",
+ "dev": true,
+ "requires": {
+ "jsonify": "~0.0.0"
+ }
+ },
+ "minimatch": {
+ "version": "2.0.10",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz",
+ "integrity": "sha1-jQh8OcazjAAbl/ynzm0OHoCvusc=",
+ "dev": true,
+ "requires": {
+ "brace-expansion": "^1.0.0"
+ }
+ },
+ "object-assign": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-2.1.1.tgz",
+ "integrity": "sha1-Q8NuXVaf+OSBbE76i+AtJpZ8GKo=",
+ "dev": true
+ }
+ }
+ },
+ "eslint-config-airbnb": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/eslint-config-airbnb/-/eslint-config-airbnb-0.1.0.tgz",
+ "integrity": "sha1-XGoSJQgFBlmpRGtprArU5wG/suA=",
+ "dev": true
+ },
+ "eslint-loader": {
+ "version": "1.9.0",
+ "resolved": "https://registry.npmjs.org/eslint-loader/-/eslint-loader-1.9.0.tgz",
+ "integrity": "sha512-40aN976qSNPyb9ejTqjEthZITpls1SVKtwguahmH1dzGCwQU/vySE+xX33VZmD8csU0ahVNCtFlsPgKqRBiqgg==",
+ "dev": true,
+ "requires": {
+ "loader-fs-cache": "^1.0.0",
+ "loader-utils": "^1.0.2",
+ "object-assign": "^4.0.1",
+ "object-hash": "^1.1.4",
+ "rimraf": "^2.6.1"
+ },
+ "dependencies": {
+ "big.js": {
+ "version": "5.2.2",
+ "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
+ "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==",
+ "dev": true
+ },
+ "emojis-list": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
+ "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==",
+ "dev": true
+ },
+ "json5": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz",
+ "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==",
+ "dev": true,
+ "requires": {
+ "minimist": "^1.2.0"
+ }
+ },
+ "loader-utils": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz",
+ "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==",
+ "dev": true,
+ "requires": {
+ "big.js": "^5.2.2",
+ "emojis-list": "^3.0.0",
+ "json5": "^1.0.1"
+ }
+ }
+ }
+ },
+ "eslint-plugin-react": {
+ "version": "3.6.3",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-3.6.3.tgz",
+ "integrity": "sha1-bGg112/ZRllet0XweB+G6Ly11YA=",
+ "dev": true
+ },
+ "esprima-fb": {
+ "version": "15001.1001.0-dev-harmony-fb",
+ "resolved": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-15001.1001.0-dev-harmony-fb.tgz",
+ "integrity": "sha1-Q761fsJujPI3092LM+QlM1d/Jlk=",
+ "dev": true
+ },
+ "esrecurse": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz",
+ "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==",
+ "dev": true,
+ "requires": {
+ "estraverse": "^4.1.0"
+ }
+ },
+ "estraverse": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
+ "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
+ "dev": true
+ },
+ "estraverse-fb": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/estraverse-fb/-/estraverse-fb-1.3.2.tgz",
+ "integrity": "sha1-0yOky15awzHOoDNBOpJT4WQ+B8Q=",
+ "dev": true
+ },
+ "esutils": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
+ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
+ "dev": true
+ },
+ "etag": {
+ "version": "1.8.1",
+ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
+ "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=",
+ "dev": true
+ },
+ "event-emitter": {
+ "version": "0.3.5",
+ "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz",
+ "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=",
+ "dev": true,
+ "requires": {
+ "d": "1",
+ "es5-ext": "~0.10.14"
+ }
+ },
+ "eventemitter3": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.0.tgz",
+ "integrity": "sha512-qerSRB0p+UDEssxTtm6EDKcE7W4OaoisfIMl4CngyEhjpYglocpNg6UEqCvemdGhosAsg4sO2dXJOdyBifPGCg==",
+ "dev": true
+ },
+ "events": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/events/-/events-1.0.2.tgz",
+ "integrity": "sha1-dYSdz+k9EPsFfDAFWv29UdBqjiQ=",
+ "dev": true
+ },
+ "eventsource": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.0.7.tgz",
+ "integrity": "sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ==",
+ "dev": true,
+ "requires": {
+ "original": "^1.0.0"
+ }
+ },
+ "evp_bytestokey": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz",
+ "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==",
+ "dev": true,
+ "requires": {
+ "md5.js": "^1.3.4",
+ "safe-buffer": "^5.1.1"
+ }
+ },
+ "exec-sh": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.2.2.tgz",
+ "integrity": "sha512-FIUCJz1RbuS0FKTdaAafAByGS0CPvU3R0MeHxgtl+djzCc//F8HakL8GzmVNZanasTbTAY/3DRFA0KpVqj/eAw==",
+ "dev": true,
+ "requires": {
+ "merge": "^1.2.0"
+ }
+ },
+ "exenv": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/exenv/-/exenv-1.2.2.tgz",
+ "integrity": "sha1-KueOhdmJQVhnCwPUe+wfA72Ru50="
+ },
+ "expand-brackets": {
+ "version": "2.1.4",
+ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz",
+ "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=",
+ "dev": true,
+ "requires": {
+ "debug": "^2.3.3",
+ "define-property": "^0.2.5",
+ "extend-shallow": "^2.0.1",
+ "posix-character-classes": "^0.1.0",
+ "regex-not": "^1.0.0",
+ "snapdragon": "^0.8.1",
+ "to-regex": "^3.0.1"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^0.1.0"
+ }
+ },
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ }
+ }
+ },
+ "expand-range": {
+ "version": "1.8.2",
+ "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz",
+ "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=",
+ "dev": true,
+ "requires": {
+ "fill-range": "^2.1.0"
+ },
+ "dependencies": {
+ "fill-range": {
+ "version": "2.2.4",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz",
+ "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==",
+ "dev": true,
+ "requires": {
+ "is-number": "^2.1.0",
+ "isobject": "^2.0.0",
+ "randomatic": "^3.0.0",
+ "repeat-element": "^1.1.2",
+ "repeat-string": "^1.5.2"
+ }
+ },
+ "is-number": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz",
+ "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=",
+ "dev": true,
+ "requires": {
+ "kind-of": "^3.0.2"
+ }
+ },
+ "isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
+ "dev": true
+ },
+ "isobject": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
+ "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
+ "dev": true,
+ "requires": {
+ "isarray": "1.0.0"
+ }
+ }
+ }
+ },
+ "expand-tilde": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz",
+ "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=",
+ "dev": true,
+ "requires": {
+ "homedir-polyfill": "^1.0.1"
+ }
+ },
+ "express": {
+ "version": "4.17.1",
+ "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz",
+ "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==",
+ "dev": true,
+ "requires": {
+ "accepts": "~1.3.7",
+ "array-flatten": "1.1.1",
+ "body-parser": "1.19.0",
+ "content-disposition": "0.5.3",
+ "content-type": "~1.0.4",
+ "cookie": "0.4.0",
+ "cookie-signature": "1.0.6",
+ "debug": "2.6.9",
+ "depd": "~1.1.2",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "finalhandler": "~1.1.2",
+ "fresh": "0.5.2",
+ "merge-descriptors": "1.0.1",
+ "methods": "~1.1.2",
+ "on-finished": "~2.3.0",
+ "parseurl": "~1.3.3",
+ "path-to-regexp": "0.1.7",
+ "proxy-addr": "~2.0.5",
+ "qs": "6.7.0",
+ "range-parser": "~1.2.1",
+ "safe-buffer": "5.1.2",
+ "send": "0.17.1",
+ "serve-static": "1.14.1",
+ "setprototypeof": "1.1.1",
+ "statuses": "~1.5.0",
+ "type-is": "~1.6.18",
+ "utils-merge": "1.0.1",
+ "vary": "~1.1.2"
+ },
+ "dependencies": {
+ "qs": {
+ "version": "6.7.0",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz",
+ "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==",
+ "dev": true
+ }
+ }
+ },
+ "ext": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz",
+ "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==",
+ "dev": true,
+ "requires": {
+ "type": "^2.0.0"
+ },
+ "dependencies": {
+ "type": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz",
+ "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==",
+ "dev": true
+ }
+ }
+ },
+ "extend": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
+ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",
+ "dev": true
+ },
+ "extend-shallow": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
+ "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=",
+ "dev": true,
+ "requires": {
+ "assign-symbols": "^1.0.0",
+ "is-extendable": "^1.0.1"
+ },
+ "dependencies": {
+ "is-extendable": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
+ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
+ "dev": true,
+ "requires": {
+ "is-plain-object": "^2.0.4"
+ }
+ }
+ }
+ },
+ "extglob": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
+ "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==",
+ "dev": true,
+ "requires": {
+ "array-unique": "^0.3.2",
+ "define-property": "^1.0.0",
+ "expand-brackets": "^2.1.4",
+ "extend-shallow": "^2.0.1",
+ "fragment-cache": "^0.2.1",
+ "regex-not": "^1.0.0",
+ "snapdragon": "^0.8.1",
+ "to-regex": "^3.0.1"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^1.0.0"
+ }
+ },
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ },
+ "is-accessor-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-data-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-descriptor": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
+ "dev": true,
+ "requires": {
+ "is-accessor-descriptor": "^1.0.0",
+ "is-data-descriptor": "^1.0.0",
+ "kind-of": "^6.0.2"
+ }
+ },
+ "kind-of": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
+ "dev": true
+ }
+ }
+ },
+ "extsprintf": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
+ "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=",
+ "dev": true
+ },
+ "fancy-log": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz",
+ "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==",
+ "dev": true,
+ "requires": {
+ "ansi-gray": "^0.1.1",
+ "color-support": "^1.1.3",
+ "parse-node-version": "^1.0.0",
+ "time-stamp": "^1.0.0"
+ }
+ },
+ "fast-deep-equal": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz",
+ "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==",
+ "dev": true
+ },
+ "fast-json-stable-stringify": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
+ "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
+ "dev": true
+ },
+ "fast-levenshtein": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.0.7.tgz",
+ "integrity": "sha1-AXjc3uAjuSkFGTrwlZ6KdjnP3Lk=",
+ "dev": true
+ },
+ "fast-safe-stringify": {
+ "version": "2.0.7",
+ "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz",
+ "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==",
+ "dev": true
+ },
+ "fastparse": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz",
+ "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==",
+ "dev": true
+ },
+ "faye-websocket": {
+ "version": "0.10.0",
+ "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz",
+ "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=",
+ "dev": true,
+ "requires": {
+ "websocket-driver": ">=0.5.1"
+ }
+ },
+ "fb-watchman": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz",
+ "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==",
+ "dev": true,
+ "requires": {
+ "bser": "2.1.1"
+ }
+ },
+ "fbjs": {
+ "version": "0.8.17",
+ "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.17.tgz",
+ "integrity": "sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90=",
+ "dev": true,
+ "requires": {
+ "core-js": "^1.0.0",
+ "isomorphic-fetch": "^2.1.1",
+ "loose-envify": "^1.0.0",
+ "object-assign": "^4.1.0",
+ "promise": "^7.1.1",
+ "setimmediate": "^1.0.5",
+ "ua-parser-js": "^0.7.18"
+ },
+ "dependencies": {
+ "core-js": {
+ "version": "1.2.7",
+ "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz",
+ "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=",
+ "dev": true
+ }
+ }
+ },
+ "figures": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz",
+ "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=",
+ "dev": true,
+ "requires": {
+ "escape-string-regexp": "^1.0.5",
+ "object-assign": "^4.1.0"
+ }
+ },
+ "file-entry-cache": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-1.3.1.tgz",
+ "integrity": "sha1-RMYepgeuS+nBQC9B9EJwy/4zT/g=",
+ "dev": true,
+ "requires": {
+ "flat-cache": "^1.2.1",
+ "object-assign": "^4.0.1"
+ }
+ },
+ "file-uri-to-path": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
+ "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
+ "dev": true,
+ "optional": true
+ },
+ "filename-regex": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz",
+ "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=",
+ "dev": true
+ },
+ "fileset": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/fileset/-/fileset-2.0.3.tgz",
+ "integrity": "sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA=",
+ "dev": true,
+ "requires": {
+ "glob": "^7.0.3",
+ "minimatch": "^3.0.3"
+ },
+ "dependencies": {
+ "glob": {
+ "version": "7.1.6",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
+ "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
+ "dev": true,
+ "requires": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ }
+ }
+ },
+ "filesize": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/filesize/-/filesize-2.0.4.tgz",
+ "integrity": "sha1-eAWUHGD83+Y/RtfqNYxZreEcEyU=",
+ "dev": true
+ },
+ "fill-range": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
+ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=",
+ "dev": true,
+ "requires": {
+ "extend-shallow": "^2.0.1",
+ "is-number": "^3.0.0",
+ "repeat-string": "^1.6.1",
+ "to-regex-range": "^2.1.0"
+ },
+ "dependencies": {
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ }
+ }
+ },
+ "finalhandler": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz",
+ "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==",
+ "dev": true,
+ "requires": {
+ "debug": "2.6.9",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "on-finished": "~2.3.0",
+ "parseurl": "~1.3.3",
+ "statuses": "~1.5.0",
+ "unpipe": "~1.0.0"
+ }
+ },
+ "find-cache-dir": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-0.1.1.tgz",
+ "integrity": "sha1-yN765XyKUqinhPnjHFfHQumToLk=",
+ "dev": true,
+ "requires": {
+ "commondir": "^1.0.1",
+ "mkdirp": "^0.5.1",
+ "pkg-dir": "^1.0.0"
+ }
+ },
+ "find-index": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/find-index/-/find-index-0.1.1.tgz",
+ "integrity": "sha1-Z101iyyjiS15Whq0cjL4tuLg3eQ=",
+ "dev": true
+ },
+ "find-up": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
+ "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
+ "dev": true,
+ "requires": {
+ "path-exists": "^2.0.0",
+ "pinkie-promise": "^2.0.0"
+ }
+ },
+ "findup-sync": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz",
+ "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=",
+ "dev": true,
+ "requires": {
+ "detect-file": "^1.0.0",
+ "is-glob": "^3.1.0",
+ "micromatch": "^3.0.4",
+ "resolve-dir": "^1.0.1"
+ }
+ },
+ "fined": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz",
+ "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==",
+ "dev": true,
+ "requires": {
+ "expand-tilde": "^2.0.2",
+ "is-plain-object": "^2.0.3",
+ "object.defaults": "^1.1.0",
+ "object.pick": "^1.2.0",
+ "parse-filepath": "^1.0.1"
+ }
+ },
+ "first-chunk-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz",
+ "integrity": "sha1-Wb+1DNkF9g18OUzT2ayqtOatk04=",
+ "dev": true
+ },
+ "flagged-respawn": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz",
+ "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==",
+ "dev": true
+ },
+ "flat-cache": {
+ "version": "1.3.4",
+ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.4.tgz",
+ "integrity": "sha512-VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg==",
+ "dev": true,
+ "requires": {
+ "circular-json": "^0.3.1",
+ "graceful-fs": "^4.1.2",
+ "rimraf": "~2.6.2",
+ "write": "^0.2.1"
+ },
+ "dependencies": {
+ "glob": {
+ "version": "7.1.6",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
+ "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
+ "dev": true,
+ "requires": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ },
+ "rimraf": {
+ "version": "2.6.3",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz",
+ "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==",
+ "dev": true,
+ "requires": {
+ "glob": "^7.1.3"
+ }
+ }
+ }
+ },
+ "flatten": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.3.tgz",
+ "integrity": "sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg==",
+ "dev": true
+ },
+ "follow-redirects": {
+ "version": "1.11.0",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.11.0.tgz",
+ "integrity": "sha512-KZm0V+ll8PfBrKwMzdo5D13b1bur9Iq9Zd/RMmAoQQcl2PxxFml8cxXPaaPYVbV0RjNjq1CU7zIzAOqtUPudmA==",
+ "dev": true,
+ "requires": {
+ "debug": "^3.0.0"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "3.2.6",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
+ "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
+ "dev": true,
+ "requires": {
+ "ms": "^2.1.1"
+ }
+ },
+ "ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+ "dev": true
+ }
+ }
+ },
+ "for-in": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
+ "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=",
+ "dev": true
+ },
+ "for-own": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz",
+ "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=",
+ "dev": true,
+ "requires": {
+ "for-in": "^1.0.1"
+ }
+ },
+ "foreach": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz",
+ "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=",
+ "dev": true
+ },
+ "forever-agent": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
+ "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=",
+ "dev": true
+ },
+ "form-data": {
+ "version": "2.3.3",
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz",
+ "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
+ "dev": true,
+ "requires": {
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.6",
+ "mime-types": "^2.1.12"
+ }
+ },
+ "forwarded": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz",
+ "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=",
+ "dev": true
+ },
+ "fragment-cache": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz",
+ "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=",
+ "dev": true,
+ "requires": {
+ "map-cache": "^0.2.2"
+ }
+ },
+ "fresh": {
+ "version": "0.5.2",
+ "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
+ "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=",
+ "dev": true
+ },
+ "fs-readdir-recursive": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-0.1.2.tgz",
+ "integrity": "sha1-MVtPuMHKW4xH3v7zGdBz2tNWgFk=",
+ "dev": true
+ },
+ "fs.realpath": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
+ "dev": true
+ },
+ "fsevents": {
+ "version": "1.2.12",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.12.tgz",
+ "integrity": "sha512-Ggd/Ktt7E7I8pxZRbGIs7vwqAPscSESMrCSkx2FtWeqmheJgCo2R74fTsZFCifr0VTPwqRpPv17+6b8Zp7th0Q==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "bindings": "^1.5.0",
+ "nan": "^2.12.1",
+ "node-pre-gyp": "*"
+ },
+ "dependencies": {
+ "abbrev": {
+ "version": "1.1.1",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "ansi-regex": {
+ "version": "2.1.1",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "aproba": {
+ "version": "1.2.0",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "are-we-there-yet": {
+ "version": "1.1.5",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "delegates": "^1.0.0",
+ "readable-stream": "^2.0.6"
+ }
+ },
+ "balanced-match": {
+ "version": "1.0.0",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "brace-expansion": {
+ "version": "1.1.11",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "chownr": {
+ "version": "1.1.4",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "code-point-at": {
+ "version": "1.1.0",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "concat-map": {
+ "version": "0.0.1",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "console-control-strings": {
+ "version": "1.1.0",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "core-util-is": {
+ "version": "1.0.2",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "debug": {
+ "version": "3.2.6",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "ms": "^2.1.1"
+ }
+ },
+ "deep-extend": {
+ "version": "0.6.0",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "delegates": {
+ "version": "1.0.0",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "detect-libc": {
+ "version": "1.0.3",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "fs-minipass": {
+ "version": "1.2.7",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "minipass": "^2.6.0"
+ }
+ },
+ "fs.realpath": {
+ "version": "1.0.0",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "gauge": {
+ "version": "2.7.4",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "aproba": "^1.0.3",
+ "console-control-strings": "^1.0.0",
+ "has-unicode": "^2.0.0",
+ "object-assign": "^4.1.0",
+ "signal-exit": "^3.0.0",
+ "string-width": "^1.0.1",
+ "strip-ansi": "^3.0.1",
+ "wide-align": "^1.1.0"
+ }
+ },
+ "glob": {
+ "version": "7.1.6",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ },
+ "has-unicode": {
+ "version": "2.0.1",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "iconv-lite": {
+ "version": "0.4.24",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "safer-buffer": ">= 2.1.2 < 3"
+ }
+ },
+ "ignore-walk": {
+ "version": "3.0.3",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "minimatch": "^3.0.4"
+ }
+ },
+ "inflight": {
+ "version": "1.0.6",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "once": "^1.3.0",
+ "wrappy": "1"
+ }
+ },
+ "inherits": {
+ "version": "2.0.4",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "ini": {
+ "version": "1.3.5",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "is-fullwidth-code-point": {
+ "version": "1.0.0",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "number-is-nan": "^1.0.0"
+ }
+ },
+ "isarray": {
+ "version": "1.0.0",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "minimatch": {
+ "version": "3.0.4",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "brace-expansion": "^1.1.7"
+ }
+ },
+ "minimist": {
+ "version": "1.2.5",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "minipass": {
+ "version": "2.9.0",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "safe-buffer": "^5.1.2",
+ "yallist": "^3.0.0"
+ }
+ },
+ "minizlib": {
+ "version": "1.3.3",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "minipass": "^2.9.0"
+ }
+ },
+ "mkdirp": {
+ "version": "0.5.3",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "minimist": "^1.2.5"
+ }
+ },
+ "ms": {
+ "version": "2.1.2",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "needle": {
+ "version": "2.3.3",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "debug": "^3.2.6",
+ "iconv-lite": "^0.4.4",
+ "sax": "^1.2.4"
+ }
+ },
+ "node-pre-gyp": {
+ "version": "0.14.0",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "detect-libc": "^1.0.2",
+ "mkdirp": "^0.5.1",
+ "needle": "^2.2.1",
+ "nopt": "^4.0.1",
+ "npm-packlist": "^1.1.6",
+ "npmlog": "^4.0.2",
+ "rc": "^1.2.7",
+ "rimraf": "^2.6.1",
+ "semver": "^5.3.0",
+ "tar": "^4.4.2"
+ }
+ },
+ "nopt": {
+ "version": "4.0.3",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "abbrev": "1",
+ "osenv": "^0.1.4"
+ }
+ },
+ "npm-bundled": {
+ "version": "1.1.1",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "npm-normalize-package-bin": "^1.0.1"
+ }
+ },
+ "npm-normalize-package-bin": {
+ "version": "1.0.1",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "npm-packlist": {
+ "version": "1.4.8",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "ignore-walk": "^3.0.1",
+ "npm-bundled": "^1.0.1",
+ "npm-normalize-package-bin": "^1.0.1"
+ }
+ },
+ "npmlog": {
+ "version": "4.1.2",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "are-we-there-yet": "~1.1.2",
+ "console-control-strings": "~1.1.0",
+ "gauge": "~2.7.3",
+ "set-blocking": "~2.0.0"
+ }
+ },
+ "number-is-nan": {
+ "version": "1.0.1",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "object-assign": {
+ "version": "4.1.1",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "once": {
+ "version": "1.4.0",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "wrappy": "1"
+ }
+ },
+ "os-homedir": {
+ "version": "1.0.2",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "os-tmpdir": {
+ "version": "1.0.2",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "osenv": {
+ "version": "0.1.5",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "os-homedir": "^1.0.0",
+ "os-tmpdir": "^1.0.0"
+ }
+ },
+ "path-is-absolute": {
+ "version": "1.0.1",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "process-nextick-args": {
+ "version": "2.0.1",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "rc": {
+ "version": "1.2.8",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "deep-extend": "^0.6.0",
+ "ini": "~1.3.0",
+ "minimist": "^1.2.0",
+ "strip-json-comments": "~2.0.1"
+ }
+ },
+ "readable-stream": {
+ "version": "2.3.7",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.3",
+ "isarray": "~1.0.0",
+ "process-nextick-args": "~2.0.0",
+ "safe-buffer": "~5.1.1",
+ "string_decoder": "~1.1.1",
+ "util-deprecate": "~1.0.1"
+ }
+ },
+ "rimraf": {
+ "version": "2.7.1",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "glob": "^7.1.3"
+ }
+ },
+ "safe-buffer": {
+ "version": "5.1.2",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "safer-buffer": {
+ "version": "2.1.2",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "sax": {
+ "version": "1.2.4",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "semver": {
+ "version": "5.7.1",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "set-blocking": {
+ "version": "2.0.0",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "signal-exit": {
+ "version": "3.0.2",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "string-width": {
+ "version": "1.0.2",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "code-point-at": "^1.0.0",
+ "is-fullwidth-code-point": "^1.0.0",
+ "strip-ansi": "^3.0.0"
+ }
+ },
+ "string_decoder": {
+ "version": "1.1.1",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "safe-buffer": "~5.1.0"
+ }
+ },
+ "strip-ansi": {
+ "version": "3.0.1",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "ansi-regex": "^2.0.0"
+ }
+ },
+ "strip-json-comments": {
+ "version": "2.0.1",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "tar": {
+ "version": "4.4.13",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "chownr": "^1.1.1",
+ "fs-minipass": "^1.2.5",
+ "minipass": "^2.8.6",
+ "minizlib": "^1.2.1",
+ "mkdirp": "^0.5.0",
+ "safe-buffer": "^5.1.2",
+ "yallist": "^3.0.3"
+ }
+ },
+ "util-deprecate": {
+ "version": "1.0.2",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "wide-align": {
+ "version": "1.1.3",
+ "bundled": true,
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "string-width": "^1.0.2 || 2"
+ }
+ },
+ "wrappy": {
+ "version": "1.0.2",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ },
+ "yallist": {
+ "version": "3.1.1",
+ "bundled": true,
+ "dev": true,
+ "optional": true
+ }
+ }
+ },
+ "function-bind": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
+ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
+ "dev": true
+ },
+ "gaze": {
+ "version": "0.5.2",
+ "resolved": "https://registry.npmjs.org/gaze/-/gaze-0.5.2.tgz",
+ "integrity": "sha1-QLcJU30k0dRXZ9takIaJ3+aaxE8=",
+ "dev": true,
+ "requires": {
+ "globule": "~0.1.0"
+ }
+ },
+ "generate-function": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz",
+ "integrity": "sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==",
+ "dev": true,
+ "requires": {
+ "is-property": "^1.0.2"
+ }
+ },
+ "generate-object-property": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz",
+ "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=",
+ "dev": true,
+ "requires": {
+ "is-property": "^1.0.0"
+ }
+ },
+ "get-assigned-identifiers": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/get-assigned-identifiers/-/get-assigned-identifiers-1.2.0.tgz",
+ "integrity": "sha512-mBBwmeGTrxEMO4pMaaf/uUEFHnYtwr8FTe8Y/mer4rcV/bye0qGm6pw1bGZFGStxC5O76c5ZAVBGnqHmOaJpdQ==",
+ "dev": true
+ },
+ "get-caller-file": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz",
+ "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==",
+ "dev": true
+ },
+ "get-imports": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/get-imports/-/get-imports-1.0.0.tgz",
+ "integrity": "sha1-R8C07piTUWQsVJdxk79Pyqv1N48=",
+ "dev": true,
+ "requires": {
+ "array-uniq": "^1.0.1",
+ "import-regex": "^1.1.0"
+ }
+ },
+ "get-stdin": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
+ "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
+ "dev": true
+ },
+ "get-value": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
+ "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=",
+ "dev": true
+ },
+ "getpass": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
+ "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
+ "dev": true,
+ "requires": {
+ "assert-plus": "^1.0.0"
+ }
+ },
+ "glob": {
+ "version": "5.0.15",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz",
+ "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=",
+ "dev": true,
+ "requires": {
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "2 || 3",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ },
+ "glob-base": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz",
+ "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=",
+ "dev": true,
+ "requires": {
+ "glob-parent": "^2.0.0",
+ "is-glob": "^2.0.0"
+ },
+ "dependencies": {
+ "is-extglob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
+ "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=",
+ "dev": true
+ },
+ "is-glob": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
+ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^1.0.0"
+ }
+ }
+ }
+ },
+ "glob-parent": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz",
+ "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=",
+ "dev": true,
+ "requires": {
+ "is-glob": "^2.0.0"
+ },
+ "dependencies": {
+ "is-extglob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
+ "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=",
+ "dev": true
+ },
+ "is-glob": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
+ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^1.0.0"
+ }
+ }
+ }
+ },
+ "glob-stream": {
+ "version": "3.1.18",
+ "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-3.1.18.tgz",
+ "integrity": "sha1-kXCl8St5Awb9/lmPMT+PeVT9FDs=",
+ "dev": true,
+ "requires": {
+ "glob": "^4.3.1",
+ "glob2base": "^0.0.12",
+ "minimatch": "^2.0.1",
+ "ordered-read-streams": "^0.1.0",
+ "through2": "^0.6.1",
+ "unique-stream": "^1.0.0"
+ },
+ "dependencies": {
+ "glob": {
+ "version": "4.5.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-4.5.3.tgz",
+ "integrity": "sha1-xstz0yJsHv7wTePFbQEvAzd+4V8=",
+ "dev": true,
+ "requires": {
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^2.0.1",
+ "once": "^1.3.0"
+ }
+ },
+ "minimatch": {
+ "version": "2.0.10",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz",
+ "integrity": "sha1-jQh8OcazjAAbl/ynzm0OHoCvusc=",
+ "dev": true,
+ "requires": {
+ "brace-expansion": "^1.0.0"
+ }
+ },
+ "readable-stream": {
+ "version": "1.0.34",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
+ "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=",
+ "dev": true,
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.1",
+ "isarray": "0.0.1",
+ "string_decoder": "~0.10.x"
+ }
+ },
+ "through2": {
+ "version": "0.6.5",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz",
+ "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=",
+ "dev": true,
+ "requires": {
+ "readable-stream": ">=1.0.33-1 <1.1.0-0",
+ "xtend": ">=4.0.0 <4.1.0-0"
+ }
+ }
+ }
+ },
+ "glob-watcher": {
+ "version": "0.0.6",
+ "resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-0.0.6.tgz",
+ "integrity": "sha1-uVtKjfdLOcgymLDAXJeLTZo7cQs=",
+ "dev": true,
+ "requires": {
+ "gaze": "^0.5.1"
+ }
+ },
+ "glob2base": {
+ "version": "0.0.12",
+ "resolved": "https://registry.npmjs.org/glob2base/-/glob2base-0.0.12.tgz",
+ "integrity": "sha1-nUGbPijxLoOjYhZKJ3BVkiycDVY=",
+ "dev": true,
+ "requires": {
+ "find-index": "^0.1.1"
+ }
+ },
+ "global": {
+ "version": "4.4.0",
+ "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz",
+ "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==",
+ "dev": true,
+ "requires": {
+ "min-document": "^2.19.0",
+ "process": "^0.11.10"
+ }
+ },
+ "global-modules": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz",
+ "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==",
+ "dev": true,
+ "requires": {
+ "global-prefix": "^1.0.1",
+ "is-windows": "^1.0.1",
+ "resolve-dir": "^1.0.0"
+ }
+ },
+ "global-prefix": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz",
+ "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=",
+ "dev": true,
+ "requires": {
+ "expand-tilde": "^2.0.2",
+ "homedir-polyfill": "^1.0.1",
+ "ini": "^1.3.4",
+ "is-windows": "^1.0.1",
+ "which": "^1.2.14"
+ }
+ },
+ "globals": {
+ "version": "9.18.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz",
+ "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==",
+ "dev": true
+ },
+ "globby": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz",
+ "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=",
+ "dev": true,
+ "requires": {
+ "array-union": "^1.0.1",
+ "arrify": "^1.0.0",
+ "glob": "^7.0.3",
+ "object-assign": "^4.0.1",
+ "pify": "^2.0.0",
+ "pinkie-promise": "^2.0.0"
+ },
+ "dependencies": {
+ "glob": {
+ "version": "7.1.6",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
+ "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
+ "dev": true,
+ "requires": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ }
+ }
+ },
+ "globule": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/globule/-/globule-0.1.0.tgz",
+ "integrity": "sha1-2cjt3h2nnRJaFRt5UzuXhnY0auU=",
+ "dev": true,
+ "requires": {
+ "glob": "~3.1.21",
+ "lodash": "~1.0.1",
+ "minimatch": "~0.2.11"
+ },
+ "dependencies": {
+ "glob": {
+ "version": "3.1.21",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-3.1.21.tgz",
+ "integrity": "sha1-0p4KBV3qUTj00H7UDomC6DwgZs0=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "~1.2.0",
+ "inherits": "1",
+ "minimatch": "~0.2.11"
+ }
+ },
+ "inherits": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz",
+ "integrity": "sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js=",
+ "dev": true
+ },
+ "lodash": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-1.0.2.tgz",
+ "integrity": "sha1-j1dWDIO1n8JwvT1WG2kAQ0MOJVE=",
+ "dev": true
+ },
+ "minimatch": {
+ "version": "0.2.14",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz",
+ "integrity": "sha1-x054BXT2PG+aCQ6Q775u9TpqdWo=",
+ "dev": true,
+ "requires": {
+ "lru-cache": "2",
+ "sigmund": "~1.0.0"
+ }
+ }
+ }
+ },
+ "glogg": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.2.tgz",
+ "integrity": "sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA==",
+ "dev": true,
+ "requires": {
+ "sparkles": "^1.0.0"
+ }
+ },
+ "graceful-fs": {
+ "version": "4.2.2",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.2.tgz",
+ "integrity": "sha512-IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q==",
+ "dev": true
+ },
+ "graceful-readlink": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz",
+ "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=",
+ "dev": true
+ },
+ "growly": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz",
+ "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=",
+ "dev": true
+ },
+ "gulp": {
+ "version": "3.9.1",
+ "resolved": "https://registry.npmjs.org/gulp/-/gulp-3.9.1.tgz",
+ "integrity": "sha1-VxzkWSjdQK9lFPxAEYZgFsE4RbQ=",
+ "dev": true,
+ "requires": {
+ "archy": "^1.0.0",
+ "chalk": "^1.0.0",
+ "deprecated": "^0.0.1",
+ "gulp-util": "^3.0.0",
+ "interpret": "^1.0.0",
+ "liftoff": "^2.1.0",
+ "minimist": "^1.1.0",
+ "orchestrator": "^0.3.0",
+ "pretty-hrtime": "^1.0.0",
+ "semver": "^4.1.0",
+ "tildify": "^1.0.0",
+ "v8flags": "^2.0.2",
+ "vinyl-fs": "^0.3.0"
+ }
+ },
+ "gulp-babel": {
+ "version": "6.1.3",
+ "resolved": "https://registry.npmjs.org/gulp-babel/-/gulp-babel-6.1.3.tgz",
+ "integrity": "sha512-tm15R3rt4gO59WXCuqrwf4QXJM9VIJC+0J2NPYSC6xZn+cZRD5y5RPGAiHaDxCJq7Rz5BDljlrk3cEjWADF+wQ==",
+ "dev": true,
+ "requires": {
+ "babel-core": "^6.23.1",
+ "object-assign": "^4.0.1",
+ "plugin-error": "^1.0.1",
+ "replace-ext": "0.0.1",
+ "through2": "^2.0.0",
+ "vinyl-sourcemaps-apply": "^0.2.0"
+ },
+ "dependencies": {
+ "through2": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
+ "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
+ "dev": true,
+ "requires": {
+ "readable-stream": "~2.3.6",
+ "xtend": "~4.0.1"
+ }
+ }
+ }
+ },
+ "gulp-concat-css": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/gulp-concat-css/-/gulp-concat-css-2.3.0.tgz",
+ "integrity": "sha1-TBWGEhqEEf9LLcRPz6TcdA6P4bY=",
+ "dev": true,
+ "requires": {
+ "gulp-util": "~3.0.1",
+ "lodash.defaults": "^3.0.0",
+ "parse-import": "^2.0.0",
+ "rework": "~1.0.0",
+ "rework-import": "^2.0.0",
+ "rework-plugin-url": "^1.0.1",
+ "through2": "~1.1.1"
+ }
+ },
+ "gulp-cssmin": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmjs.org/gulp-cssmin/-/gulp-cssmin-0.1.7.tgz",
+ "integrity": "sha1-9Xb+UhHRB7qpQBUEJJv4eu0VVr0=",
+ "dev": true,
+ "requires": {
+ "clean-css": "^3.1.9",
+ "filesize": "~2.0.0",
+ "graceful-fs": "~2.0.0",
+ "gulp-rename": "~1.1.0",
+ "gulp-util": "~2.2.0",
+ "map-stream": "0.0.4",
+ "temp-write": "~0.1.0"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-0.2.1.tgz",
+ "integrity": "sha1-DY6UaWej2BQ/k+JOKYUl/BsiNfk=",
+ "dev": true
+ },
+ "ansi-styles": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.1.0.tgz",
+ "integrity": "sha1-6uy/Zs1waIJ2Cy9GkVgrj1XXp94=",
+ "dev": true
+ },
+ "chalk": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.5.1.tgz",
+ "integrity": "sha1-Zjs6ZItotV0EaQ1JFnqoN4WPIXQ=",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^1.1.0",
+ "escape-string-regexp": "^1.0.0",
+ "has-ansi": "^0.1.0",
+ "strip-ansi": "^0.3.0",
+ "supports-color": "^0.2.0"
+ }
+ },
+ "dateformat": {
+ "version": "1.0.12",
+ "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz",
+ "integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=",
+ "dev": true,
+ "requires": {
+ "get-stdin": "^4.0.1",
+ "meow": "^3.3.0"
+ }
+ },
+ "gulp-util": {
+ "version": "2.2.20",
+ "resolved": "https://registry.npmjs.org/gulp-util/-/gulp-util-2.2.20.tgz",
+ "integrity": "sha1-1xRuVyiRC9jwR6awseVJvCLb1kw=",
+ "dev": true,
+ "requires": {
+ "chalk": "^0.5.0",
+ "dateformat": "^1.0.7-1.2.3",
+ "lodash._reinterpolate": "^2.4.1",
+ "lodash.template": "^2.4.1",
+ "minimist": "^0.2.0",
+ "multipipe": "^0.1.0",
+ "through2": "^0.5.0",
+ "vinyl": "^0.2.1"
+ }
+ },
+ "has-ansi": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-0.1.0.tgz",
+ "integrity": "sha1-hPJlqujA5qiKEtcCKJS3VoiUxi4=",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^0.2.0"
+ }
+ },
+ "lodash._reinterpolate": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-2.4.1.tgz",
+ "integrity": "sha1-TxInqlqHEfxjL1sHofRgequLMiI=",
+ "dev": true
+ },
+ "lodash.defaults": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-2.4.1.tgz",
+ "integrity": "sha1-p+iIXwXmiFEUS24SqPNngCa8TFQ=",
+ "dev": true,
+ "requires": {
+ "lodash._objecttypes": "~2.4.1",
+ "lodash.keys": "~2.4.1"
+ }
+ },
+ "lodash.escape": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-2.4.1.tgz",
+ "integrity": "sha1-LOEsXghNsKV92l5dHu659dF1o7Q=",
+ "dev": true,
+ "requires": {
+ "lodash._escapehtmlchar": "~2.4.1",
+ "lodash._reunescapedhtml": "~2.4.1",
+ "lodash.keys": "~2.4.1"
+ }
+ },
+ "lodash.keys": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-2.4.1.tgz",
+ "integrity": "sha1-SN6kbfj/djKxDXBrissmWR4rNyc=",
+ "dev": true,
+ "requires": {
+ "lodash._isnative": "~2.4.1",
+ "lodash._shimkeys": "~2.4.1",
+ "lodash.isobject": "~2.4.1"
+ }
+ },
+ "lodash.template": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-2.4.1.tgz",
+ "integrity": "sha1-nmEQB+32KRKal0qzxIuBez4c8g0=",
+ "dev": true,
+ "requires": {
+ "lodash._escapestringchar": "~2.4.1",
+ "lodash._reinterpolate": "~2.4.1",
+ "lodash.defaults": "~2.4.1",
+ "lodash.escape": "~2.4.1",
+ "lodash.keys": "~2.4.1",
+ "lodash.templatesettings": "~2.4.1",
+ "lodash.values": "~2.4.1"
+ }
+ },
+ "lodash.templatesettings": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-2.4.1.tgz",
+ "integrity": "sha1-6nbHXRHrhtTb6JqDiTu4YZKaxpk=",
+ "dev": true,
+ "requires": {
+ "lodash._reinterpolate": "~2.4.1",
+ "lodash.escape": "~2.4.1"
+ }
+ },
+ "minimist": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.2.1.tgz",
+ "integrity": "sha512-GY8fANSrTMfBVfInqJAY41QkOM+upUTytK1jZ0c8+3HdHrJxBJ3rF5i9moClXTE8uUSnUo8cAsCoxDXvSY4DHg==",
+ "dev": true
+ },
+ "readable-stream": {
+ "version": "1.0.34",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
+ "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=",
+ "dev": true,
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.1",
+ "isarray": "0.0.1",
+ "string_decoder": "~0.10.x"
+ }
+ },
+ "strip-ansi": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.3.0.tgz",
+ "integrity": "sha1-JfSOoiynkYfzF0pNuHWTR7sSYiA=",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^0.2.1"
+ }
+ },
+ "supports-color": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-0.2.0.tgz",
+ "integrity": "sha1-2S3iaU6z9nMjlz1649i1W0wiGQo=",
+ "dev": true
+ },
+ "through2": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-0.5.1.tgz",
+ "integrity": "sha1-390BLrnHAOIyP9M084rGIqs3Lac=",
+ "dev": true,
+ "requires": {
+ "readable-stream": "~1.0.17",
+ "xtend": "~3.0.0"
+ }
+ },
+ "vinyl": {
+ "version": "0.2.3",
+ "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.2.3.tgz",
+ "integrity": "sha1-vKk4IJWC7FpJrVOKAPofEl5RMlI=",
+ "dev": true,
+ "requires": {
+ "clone-stats": "~0.0.1"
+ }
+ },
+ "xtend": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-3.0.0.tgz",
+ "integrity": "sha1-XM50B7r2Qsunvs2laBEcST9ZZlo=",
+ "dev": true
+ }
+ }
+ },
+ "gulp-rename": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/gulp-rename/-/gulp-rename-1.1.0.tgz",
+ "integrity": "sha1-kwkKqvTThsB/IFOKaIjxXvunJ6E=",
+ "dev": true,
+ "requires": {
+ "map-stream": ">=0.0.4"
+ }
+ },
+ "gulp-shell": {
+ "version": "0.5.2",
+ "resolved": "https://registry.npmjs.org/gulp-shell/-/gulp-shell-0.5.2.tgz",
+ "integrity": "sha1-pJWcoGUa0ce7/nCy0K27tOGuqY0=",
+ "dev": true,
+ "requires": {
+ "async": "^1.5.0",
+ "gulp-util": "^3.0.7",
+ "lodash": "^4.0.0",
+ "through2": "^2.0.0"
+ },
+ "dependencies": {
+ "through2": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
+ "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
+ "dev": true,
+ "requires": {
+ "readable-stream": "~2.3.6",
+ "xtend": "~4.0.1"
+ }
+ }
+ }
+ },
+ "gulp-util": {
+ "version": "3.0.8",
+ "resolved": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.8.tgz",
+ "integrity": "sha1-AFTh50RQLifATBh8PsxQXdVLu08=",
+ "dev": true,
+ "requires": {
+ "array-differ": "^1.0.0",
+ "array-uniq": "^1.0.2",
+ "beeper": "^1.0.0",
+ "chalk": "^1.0.0",
+ "dateformat": "^2.0.0",
+ "fancy-log": "^1.1.0",
+ "gulplog": "^1.0.0",
+ "has-gulplog": "^0.1.0",
+ "lodash._reescape": "^3.0.0",
+ "lodash._reevaluate": "^3.0.0",
+ "lodash._reinterpolate": "^3.0.0",
+ "lodash.template": "^3.0.0",
+ "minimist": "^1.1.0",
+ "multipipe": "^0.1.2",
+ "object-assign": "^3.0.0",
+ "replace-ext": "0.0.1",
+ "through2": "^2.0.0",
+ "vinyl": "^0.5.0"
+ },
+ "dependencies": {
+ "object-assign": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz",
+ "integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I=",
+ "dev": true
+ },
+ "through2": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
+ "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
+ "dev": true,
+ "requires": {
+ "readable-stream": "~2.3.6",
+ "xtend": "~4.0.1"
+ }
+ }
+ }
+ },
+ "gulplog": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz",
+ "integrity": "sha1-4oxNRdBey77YGDY86PnFkmIp/+U=",
+ "dev": true,
+ "requires": {
+ "glogg": "^1.0.0"
+ }
+ },
+ "handlebars": {
+ "version": "4.7.6",
+ "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz",
+ "integrity": "sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==",
+ "dev": true,
+ "requires": {
+ "minimist": "^1.2.5",
+ "neo-async": "^2.6.0",
+ "source-map": "^0.6.1",
+ "uglify-js": "^3.1.4",
+ "wordwrap": "^1.0.0"
+ },
+ "dependencies": {
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true
+ },
+ "wordwrap": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz",
+ "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=",
+ "dev": true
+ }
+ }
+ },
+ "har-schema": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
+ "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=",
+ "dev": true
+ },
+ "har-validator": {
+ "version": "5.1.3",
+ "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz",
+ "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==",
+ "dev": true,
+ "requires": {
+ "ajv": "^6.5.5",
+ "har-schema": "^2.0.0"
+ }
+ },
+ "has": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
+ "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
+ "dev": true,
+ "requires": {
+ "function-bind": "^1.1.1"
+ }
+ },
+ "has-ansi": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
+ "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^2.0.0"
+ }
+ },
+ "has-flag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz",
+ "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=",
+ "dev": true
+ },
+ "has-gulplog": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz",
+ "integrity": "sha1-ZBTIKRNpfaUVkDl9r7EvIpZ4Ec4=",
+ "dev": true,
+ "requires": {
+ "sparkles": "^1.0.0"
+ }
+ },
+ "has-value": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
+ "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=",
+ "dev": true,
+ "requires": {
+ "get-value": "^2.0.6",
+ "has-values": "^1.0.0",
+ "isobject": "^3.0.0"
+ }
+ },
+ "has-values": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz",
+ "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=",
+ "dev": true,
+ "requires": {
+ "is-number": "^3.0.0",
+ "kind-of": "^4.0.0"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
+ "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
+ "hash-base": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz",
+ "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.1",
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "hash.js": {
+ "version": "1.1.7",
+ "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz",
+ "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.3",
+ "minimalistic-assert": "^1.0.1"
+ }
+ },
+ "history": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/history/-/history-3.0.0.tgz",
+ "integrity": "sha1-As/05vadxi3YEWEQSmP1uF6tDIU=",
+ "dev": true,
+ "requires": {
+ "invariant": "^2.0.0",
+ "query-string": "^4.1.0",
+ "warning": "^2.0.0"
+ },
+ "dependencies": {
+ "warning": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/warning/-/warning-2.1.0.tgz",
+ "integrity": "sha1-ISINnGOvx3qMkhEeARr3Bc4MaQE=",
+ "dev": true,
+ "requires": {
+ "loose-envify": "^1.0.0"
+ }
+ }
+ }
+ },
+ "hmac-drbg": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
+ "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=",
+ "dev": true,
+ "requires": {
+ "hash.js": "^1.0.3",
+ "minimalistic-assert": "^1.0.0",
+ "minimalistic-crypto-utils": "^1.0.1"
+ }
+ },
+ "hoist-non-react-statics": {
+ "version": "3.3.2",
+ "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz",
+ "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==",
+ "dev": true,
+ "requires": {
+ "react-is": "^16.7.0"
+ }
+ },
+ "home-or-tmp": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz",
+ "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=",
+ "dev": true,
+ "requires": {
+ "os-homedir": "^1.0.0",
+ "os-tmpdir": "^1.0.1"
+ }
+ },
+ "homedir-polyfill": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz",
+ "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==",
+ "dev": true,
+ "requires": {
+ "parse-passwd": "^1.0.0"
+ }
+ },
+ "hosted-git-info": {
+ "version": "2.8.8",
+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz",
+ "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==",
+ "dev": true
+ },
+ "html-comment-regex": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/html-comment-regex/-/html-comment-regex-1.1.2.tgz",
+ "integrity": "sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ==",
+ "dev": true
+ },
+ "html-encoding-sniffer": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz",
+ "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==",
+ "dev": true,
+ "requires": {
+ "whatwg-encoding": "^1.0.1"
+ }
+ },
+ "htmlescape": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz",
+ "integrity": "sha1-OgPtwiFLyjtmQko+eVk0lQnLA1E=",
+ "dev": true
+ },
+ "http-errors": {
+ "version": "1.7.2",
+ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz",
+ "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==",
+ "dev": true,
+ "requires": {
+ "depd": "~1.1.2",
+ "inherits": "2.0.3",
+ "setprototypeof": "1.1.1",
+ "statuses": ">= 1.5.0 < 2",
+ "toidentifier": "1.0.0"
+ },
+ "dependencies": {
+ "inherits": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
+ "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
+ "dev": true
+ }
+ }
+ },
+ "http-proxy": {
+ "version": "1.18.0",
+ "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.0.tgz",
+ "integrity": "sha512-84I2iJM/n1d4Hdgc6y2+qY5mDaz2PUVjlg9znE9byl+q0uC3DeByqBGReQu5tpLK0TAqTIXScRUV+dg7+bUPpQ==",
+ "dev": true,
+ "requires": {
+ "eventemitter3": "^4.0.0",
+ "follow-redirects": "^1.0.0",
+ "requires-port": "^1.0.0"
+ }
+ },
+ "http-proxy-middleware": {
+ "version": "0.17.4",
+ "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.17.4.tgz",
+ "integrity": "sha1-ZC6ISIUdZvCdTxJJEoRtuutBuDM=",
+ "dev": true,
+ "requires": {
+ "http-proxy": "^1.16.2",
+ "is-glob": "^3.1.0",
+ "lodash": "^4.17.2",
+ "micromatch": "^2.3.11"
+ },
+ "dependencies": {
+ "arr-diff": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
+ "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
+ "dev": true,
+ "requires": {
+ "arr-flatten": "^1.0.1"
+ }
+ },
+ "array-unique": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
+ "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=",
+ "dev": true
+ },
+ "braces": {
+ "version": "1.8.5",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
+ "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
+ "dev": true,
+ "requires": {
+ "expand-range": "^1.8.1",
+ "preserve": "^0.2.0",
+ "repeat-element": "^1.1.2"
+ }
+ },
+ "expand-brackets": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
+ "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
+ "dev": true,
+ "requires": {
+ "is-posix-bracket": "^0.1.0"
+ }
+ },
+ "extglob": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
+ "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^1.0.0"
+ }
+ },
+ "is-extglob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
+ "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=",
+ "dev": true
+ },
+ "micromatch": {
+ "version": "2.3.11",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",
+ "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=",
+ "dev": true,
+ "requires": {
+ "arr-diff": "^2.0.0",
+ "array-unique": "^0.2.1",
+ "braces": "^1.8.2",
+ "expand-brackets": "^0.1.4",
+ "extglob": "^0.3.1",
+ "filename-regex": "^2.0.0",
+ "is-extglob": "^1.0.0",
+ "is-glob": "^2.0.1",
+ "kind-of": "^3.0.2",
+ "normalize-path": "^2.0.1",
+ "object.omit": "^2.0.0",
+ "parse-glob": "^3.0.4",
+ "regex-cache": "^0.4.2"
+ },
+ "dependencies": {
+ "is-glob": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
+ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^1.0.0"
+ }
+ }
+ }
+ }
+ }
+ },
+ "http-signature": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
+ "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
+ "dev": true,
+ "requires": {
+ "assert-plus": "^1.0.0",
+ "jsprim": "^1.2.2",
+ "sshpk": "^1.7.0"
+ }
+ },
+ "https-browserify": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-0.0.1.tgz",
+ "integrity": "sha1-P5E2XKvmC3ftDruiS0VOPgnZWoI=",
+ "dev": true
+ },
+ "hyphenate-style-name": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.3.tgz",
+ "integrity": "sha512-EcuixamT82oplpoJ2XU4pDtKGWQ7b00CD9f1ug9IaQ3p1bkHMiKCZ9ut9QDI6qsa6cpUuB+A/I+zLtdNK4n2DQ==",
+ "dev": true
+ },
+ "iconv-lite": {
+ "version": "0.4.24",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
+ "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
+ "dev": true,
+ "requires": {
+ "safer-buffer": ">= 2.1.2 < 3"
+ }
+ },
+ "icss-replace-symbols": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz",
+ "integrity": "sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=",
+ "dev": true
+ },
+ "ieee754": {
+ "version": "1.1.13",
+ "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz",
+ "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==",
+ "dev": true
+ },
+ "import-regex": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/import-regex/-/import-regex-1.1.0.tgz",
+ "integrity": "sha1-pVxS5McFx2XKIQ6SQqBrvMiqf2Y=",
+ "dev": true
+ },
+ "indent-string": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
+ "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
+ "dev": true,
+ "requires": {
+ "repeating": "^2.0.0"
+ }
+ },
+ "indexes-of": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz",
+ "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=",
+ "dev": true
+ },
+ "indexof": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz",
+ "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=",
+ "dev": true
+ },
+ "inflight": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
+ "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
+ "dev": true,
+ "requires": {
+ "once": "^1.3.0",
+ "wrappy": "1"
+ }
+ },
+ "inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
+ "dev": true
+ },
+ "ini": {
+ "version": "1.3.5",
+ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
+ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==",
+ "dev": true
+ },
+ "inline-source-map": {
+ "version": "0.5.0",
+ "resolved": "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.5.0.tgz",
+ "integrity": "sha1-Skxd2OT7Xps82mDIIt+tyu5m4K8=",
+ "dev": true,
+ "requires": {
+ "source-map": "~0.4.0"
+ },
+ "dependencies": {
+ "source-map": {
+ "version": "0.4.4",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
+ "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
+ "dev": true,
+ "requires": {
+ "amdefine": ">=0.0.4"
+ }
+ }
+ }
+ },
+ "inline-style-prefixer": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/inline-style-prefixer/-/inline-style-prefixer-2.0.5.tgz",
+ "integrity": "sha1-wVPH6I/YT+9cYC6VqBaLJ3BnH+c=",
+ "dev": true,
+ "requires": {
+ "bowser": "^1.0.0",
+ "hyphenate-style-name": "^1.0.1"
+ }
+ },
+ "inquirer": {
+ "version": "0.9.0",
+ "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-0.9.0.tgz",
+ "integrity": "sha1-c2bjijMeYZBJWKzlstpKml9jZ5g=",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^2.0.0",
+ "chalk": "^1.0.0",
+ "cli-width": "^1.0.1",
+ "figures": "^1.3.5",
+ "lodash": "^3.3.1",
+ "readline2": "^0.1.1",
+ "run-async": "^0.1.0",
+ "rx-lite": "^2.5.2",
+ "strip-ansi": "^3.0.0",
+ "through": "^2.3.6"
+ },
+ "dependencies": {
+ "lodash": {
+ "version": "3.10.1",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz",
+ "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=",
+ "dev": true
+ }
+ }
+ },
+ "insert-module-globals": {
+ "version": "6.6.3",
+ "resolved": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-6.6.3.tgz",
+ "integrity": "sha1-IGOOKaMPntHKLjqCX7wsulJG3fw=",
+ "dev": true,
+ "requires": {
+ "JSONStream": "^1.0.3",
+ "combine-source-map": "~0.6.1",
+ "concat-stream": "~1.4.1",
+ "is-buffer": "^1.1.0",
+ "lexical-scope": "^1.2.0",
+ "process": "~0.11.0",
+ "through2": "^1.0.0",
+ "xtend": "^4.0.0"
+ }
+ },
+ "interpret": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.2.0.tgz",
+ "integrity": "sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw==",
+ "dev": true
+ },
+ "invariant": {
+ "version": "2.2.4",
+ "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz",
+ "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==",
+ "dev": true,
+ "requires": {
+ "loose-envify": "^1.0.0"
+ }
+ },
+ "invert-kv": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz",
+ "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=",
+ "dev": true
+ },
+ "ip-regex": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-1.0.3.tgz",
+ "integrity": "sha1-3FiQdvZZ9BnCIgOaMzFvHHOH7/0=",
+ "dev": true
+ },
+ "ipaddr.js": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
+ "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==",
+ "dev": true
+ },
+ "is-absolute": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz",
+ "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==",
+ "dev": true,
+ "requires": {
+ "is-relative": "^1.0.0",
+ "is-windows": "^1.0.1"
+ }
+ },
+ "is-absolute-url": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz",
+ "integrity": "sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=",
+ "dev": true
+ },
+ "is-accessor-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
+ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
+ "dev": true,
+ "requires": {
+ "kind-of": "^3.0.2"
+ }
+ },
+ "is-arrayish": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
+ "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
+ "dev": true
+ },
+ "is-binary-path": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
+ "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=",
+ "dev": true,
+ "requires": {
+ "binary-extensions": "^1.0.0"
+ }
+ },
+ "is-buffer": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
+ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
+ "dev": true
+ },
+ "is-ci": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.2.1.tgz",
+ "integrity": "sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==",
+ "dev": true,
+ "requires": {
+ "ci-info": "^1.5.0"
+ }
+ },
+ "is-data-descriptor": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
+ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
+ "dev": true,
+ "requires": {
+ "kind-of": "^3.0.2"
+ }
+ },
+ "is-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
+ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
+ "dev": true,
+ "requires": {
+ "is-accessor-descriptor": "^0.1.6",
+ "is-data-descriptor": "^0.1.4",
+ "kind-of": "^5.0.0"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
+ "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
+ "dev": true
+ }
+ }
+ },
+ "is-dotfile": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz",
+ "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=",
+ "dev": true
+ },
+ "is-equal-shallow": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz",
+ "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=",
+ "dev": true,
+ "requires": {
+ "is-primitive": "^2.0.0"
+ }
+ },
+ "is-extendable": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
+ "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
+ "dev": true
+ },
+ "is-extglob": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
+ "dev": true
+ },
+ "is-finite": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz",
+ "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==",
+ "dev": true
+ },
+ "is-fullwidth-code-point": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
+ "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
+ "dev": true,
+ "requires": {
+ "number-is-nan": "^1.0.0"
+ }
+ },
+ "is-function": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.2.tgz",
+ "integrity": "sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==",
+ "dev": true
+ },
+ "is-glob": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
+ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^2.1.0"
+ }
+ },
+ "is-integer": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/is-integer/-/is-integer-1.0.7.tgz",
+ "integrity": "sha1-a96Bqs3feLZZtmKdYpytxRqIbVw=",
+ "dev": true,
+ "requires": {
+ "is-finite": "^1.0.0"
+ }
+ },
+ "is-my-ip-valid": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz",
+ "integrity": "sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==",
+ "dev": true
+ },
+ "is-my-json-valid": {
+ "version": "2.20.0",
+ "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.20.0.tgz",
+ "integrity": "sha512-XTHBZSIIxNsIsZXg7XB5l8z/OBFosl1Wao4tXLpeC7eKU4Vm/kdop2azkPqULwnfGQjmeDIyey9g7afMMtdWAA==",
+ "dev": true,
+ "requires": {
+ "generate-function": "^2.0.0",
+ "generate-object-property": "^1.1.0",
+ "is-my-ip-valid": "^1.0.0",
+ "jsonpointer": "^4.0.0",
+ "xtend": "^4.0.0"
+ }
+ },
+ "is-number": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
+ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
+ "dev": true,
+ "requires": {
+ "kind-of": "^3.0.2"
+ }
+ },
+ "is-path-cwd": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz",
+ "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=",
+ "dev": true
+ },
+ "is-path-in-cwd": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz",
+ "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==",
+ "dev": true,
+ "requires": {
+ "is-path-inside": "^1.0.0"
+ }
+ },
+ "is-path-inside": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz",
+ "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=",
+ "dev": true,
+ "requires": {
+ "path-is-inside": "^1.0.1"
+ }
+ },
+ "is-plain-obj": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz",
+ "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=",
+ "dev": true
+ },
+ "is-plain-object": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
+ "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
+ "dev": true,
+ "requires": {
+ "isobject": "^3.0.1"
+ }
+ },
+ "is-posix-bracket": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz",
+ "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=",
+ "dev": true
+ },
+ "is-primitive": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz",
+ "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=",
+ "dev": true
+ },
+ "is-property": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz",
+ "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=",
+ "dev": true
+ },
+ "is-relative": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz",
+ "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==",
+ "dev": true,
+ "requires": {
+ "is-unc-path": "^1.0.0"
+ }
+ },
+ "is-resolvable": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz",
+ "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==",
+ "dev": true
+ },
+ "is-stream": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
+ "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=",
+ "dev": true
+ },
+ "is-svg": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-2.1.0.tgz",
+ "integrity": "sha1-z2EJDaDZ77yrhyLeum8DIgjbsOk=",
+ "dev": true,
+ "requires": {
+ "html-comment-regex": "^1.1.0"
+ }
+ },
+ "is-typedarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
+ "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
+ "dev": true
+ },
+ "is-unc-path": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz",
+ "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==",
+ "dev": true,
+ "requires": {
+ "unc-path-regex": "^0.1.2"
+ }
+ },
+ "is-utf8": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
+ "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
+ "dev": true
+ },
+ "is-windows": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
+ "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==",
+ "dev": true
+ },
+ "is-wsl": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz",
+ "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=",
+ "dev": true
+ },
+ "isarray": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
+ "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
+ "dev": true
+ },
+ "isexe": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
+ "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
+ "dev": true
+ },
+ "isobject": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
+ "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
+ "dev": true
+ },
+ "isomorphic-fetch": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz",
+ "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=",
+ "dev": true,
+ "requires": {
+ "node-fetch": "^1.0.1",
+ "whatwg-fetch": ">=0.10.0"
+ }
+ },
+ "isstream": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
+ "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=",
+ "dev": true
+ },
+ "istanbul-api": {
+ "version": "1.3.7",
+ "resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-1.3.7.tgz",
+ "integrity": "sha512-4/ApBnMVeEPG3EkSzcw25wDe4N66wxwn+KKn6b47vyek8Xb3NBAcg4xfuQbS7BqcZuTX4wxfD5lVagdggR3gyA==",
+ "dev": true,
+ "requires": {
+ "async": "^2.1.4",
+ "fileset": "^2.0.2",
+ "istanbul-lib-coverage": "^1.2.1",
+ "istanbul-lib-hook": "^1.2.2",
+ "istanbul-lib-instrument": "^1.10.2",
+ "istanbul-lib-report": "^1.1.5",
+ "istanbul-lib-source-maps": "^1.2.6",
+ "istanbul-reports": "^1.5.1",
+ "js-yaml": "^3.7.0",
+ "mkdirp": "^0.5.1",
+ "once": "^1.4.0"
+ },
+ "dependencies": {
+ "async": {
+ "version": "2.6.3",
+ "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz",
+ "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==",
+ "dev": true,
+ "requires": {
+ "lodash": "^4.17.14"
+ }
+ }
+ }
+ },
+ "istanbul-lib-coverage": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz",
+ "integrity": "sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ==",
+ "dev": true
+ },
+ "istanbul-lib-hook": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-1.2.2.tgz",
+ "integrity": "sha512-/Jmq7Y1VeHnZEQ3TL10VHyb564mn6VrQXHchON9Jf/AEcmQ3ZIiyD1BVzNOKTZf/G3gE+kiGK6SmpF9y3qGPLw==",
+ "dev": true,
+ "requires": {
+ "append-transform": "^0.4.0"
+ }
+ },
+ "istanbul-lib-instrument": {
+ "version": "1.10.2",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.2.tgz",
+ "integrity": "sha512-aWHxfxDqvh/ZlxR8BBaEPVSWDPUkGD63VjGQn3jcw8jCp7sHEMKcrj4xfJn/ABzdMEHiQNyvDQhqm5o8+SQg7A==",
+ "dev": true,
+ "requires": {
+ "babel-generator": "^6.18.0",
+ "babel-template": "^6.16.0",
+ "babel-traverse": "^6.18.0",
+ "babel-types": "^6.18.0",
+ "babylon": "^6.18.0",
+ "istanbul-lib-coverage": "^1.2.1",
+ "semver": "^5.3.0"
+ },
+ "dependencies": {
+ "semver": {
+ "version": "5.7.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
+ "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
+ "dev": true
+ }
+ }
+ },
+ "istanbul-lib-report": {
+ "version": "1.1.5",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-1.1.5.tgz",
+ "integrity": "sha512-UsYfRMoi6QO/doUshYNqcKJqVmFe9w51GZz8BS3WB0lYxAllQYklka2wP9+dGZeHYaWIdcXUx8JGdbqaoXRXzw==",
+ "dev": true,
+ "requires": {
+ "istanbul-lib-coverage": "^1.2.1",
+ "mkdirp": "^0.5.1",
+ "path-parse": "^1.0.5",
+ "supports-color": "^3.1.2"
+ },
+ "dependencies": {
+ "supports-color": {
+ "version": "3.2.3",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz",
+ "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=",
+ "dev": true,
+ "requires": {
+ "has-flag": "^1.0.0"
+ }
+ }
+ }
+ },
+ "istanbul-lib-source-maps": {
+ "version": "1.2.6",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.6.tgz",
+ "integrity": "sha512-TtbsY5GIHgbMsMiRw35YBHGpZ1DVFEO19vxxeiDMYaeOFOCzfnYVxvl6pOUIZR4dtPhAGpSMup8OyF8ubsaqEg==",
+ "dev": true,
+ "requires": {
+ "debug": "^3.1.0",
+ "istanbul-lib-coverage": "^1.2.1",
+ "mkdirp": "^0.5.1",
+ "rimraf": "^2.6.1",
+ "source-map": "^0.5.3"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "3.2.6",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
+ "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
+ "dev": true,
+ "requires": {
+ "ms": "^2.1.1"
+ }
+ },
+ "ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+ "dev": true
+ }
+ }
+ },
+ "istanbul-reports": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-1.5.1.tgz",
+ "integrity": "sha512-+cfoZ0UXzWjhAdzosCPP3AN8vvef8XDkWtTfgaN+7L3YTpNYITnCaEkceo5SEYy644VkHka/P1FvkWvrG/rrJw==",
+ "dev": true,
+ "requires": {
+ "handlebars": "^4.0.3"
+ }
+ },
+ "jest-changed-files": {
+ "version": "19.0.2",
+ "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-19.0.2.tgz",
+ "integrity": "sha1-FsVMhMMnC+QI4G0uivPz43qIWCQ=",
+ "dev": true
+ },
+ "jest-cli": {
+ "version": "19.0.2",
+ "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-19.0.2.tgz",
+ "integrity": "sha1-zDYgtirKxfLZOlSMtu9pfU7IVEM=",
+ "dev": true,
+ "requires": {
+ "ansi-escapes": "^1.4.0",
+ "callsites": "^2.0.0",
+ "chalk": "^1.1.1",
+ "graceful-fs": "^4.1.6",
+ "is-ci": "^1.0.9",
+ "istanbul-api": "^1.1.0-alpha.1",
+ "istanbul-lib-coverage": "^1.0.0",
+ "istanbul-lib-instrument": "^1.1.1",
+ "jest-changed-files": "^19.0.2",
+ "jest-config": "^19.0.2",
+ "jest-environment-jsdom": "^19.0.2",
+ "jest-haste-map": "^19.0.0",
+ "jest-jasmine2": "^19.0.2",
+ "jest-message-util": "^19.0.0",
+ "jest-regex-util": "^19.0.0",
+ "jest-resolve-dependencies": "^19.0.0",
+ "jest-runtime": "^19.0.2",
+ "jest-snapshot": "^19.0.2",
+ "jest-util": "^19.0.2",
+ "micromatch": "^2.3.11",
+ "node-notifier": "^5.0.1",
+ "slash": "^1.0.0",
+ "string-length": "^1.0.1",
+ "throat": "^3.0.0",
+ "which": "^1.1.1",
+ "worker-farm": "^1.3.1",
+ "yargs": "^6.3.0"
+ },
+ "dependencies": {
+ "arr-diff": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
+ "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
+ "dev": true,
+ "requires": {
+ "arr-flatten": "^1.0.1"
+ }
+ },
+ "array-unique": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
+ "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=",
+ "dev": true
+ },
+ "braces": {
+ "version": "1.8.5",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
+ "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
+ "dev": true,
+ "requires": {
+ "expand-range": "^1.8.1",
+ "preserve": "^0.2.0",
+ "repeat-element": "^1.1.2"
+ }
+ },
+ "camelcase": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz",
+ "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=",
+ "dev": true
+ },
+ "cliui": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
+ "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
+ "dev": true,
+ "requires": {
+ "string-width": "^1.0.1",
+ "strip-ansi": "^3.0.1",
+ "wrap-ansi": "^2.0.0"
+ }
+ },
+ "expand-brackets": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
+ "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
+ "dev": true,
+ "requires": {
+ "is-posix-bracket": "^0.1.0"
+ }
+ },
+ "extglob": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
+ "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^1.0.0"
+ }
+ },
+ "is-extglob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
+ "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=",
+ "dev": true
+ },
+ "is-glob": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
+ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^1.0.0"
+ }
+ },
+ "micromatch": {
+ "version": "2.3.11",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",
+ "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=",
+ "dev": true,
+ "requires": {
+ "arr-diff": "^2.0.0",
+ "array-unique": "^0.2.1",
+ "braces": "^1.8.2",
+ "expand-brackets": "^0.1.4",
+ "extglob": "^0.3.1",
+ "filename-regex": "^2.0.0",
+ "is-extglob": "^1.0.0",
+ "is-glob": "^2.0.1",
+ "kind-of": "^3.0.2",
+ "normalize-path": "^2.0.1",
+ "object.omit": "^2.0.0",
+ "parse-glob": "^3.0.4",
+ "regex-cache": "^0.4.2"
+ }
+ },
+ "yargs": {
+ "version": "6.6.0",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz",
+ "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=",
+ "dev": true,
+ "requires": {
+ "camelcase": "^3.0.0",
+ "cliui": "^3.2.0",
+ "decamelize": "^1.1.1",
+ "get-caller-file": "^1.0.1",
+ "os-locale": "^1.4.0",
+ "read-pkg-up": "^1.0.1",
+ "require-directory": "^2.1.1",
+ "require-main-filename": "^1.0.1",
+ "set-blocking": "^2.0.0",
+ "string-width": "^1.0.2",
+ "which-module": "^1.0.0",
+ "y18n": "^3.2.1",
+ "yargs-parser": "^4.2.0"
+ }
+ }
+ }
+ },
+ "jest-config": {
+ "version": "19.0.4",
+ "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-19.0.4.tgz",
+ "integrity": "sha1-QpgCEdRkF+kcp6v/0IbCcCNPc/0=",
+ "dev": true,
+ "requires": {
+ "chalk": "^1.1.1",
+ "jest-environment-jsdom": "^19.0.2",
+ "jest-environment-node": "^19.0.2",
+ "jest-jasmine2": "^19.0.2",
+ "jest-regex-util": "^19.0.0",
+ "jest-resolve": "^19.0.2",
+ "jest-validate": "^19.0.2",
+ "pretty-format": "^19.0.0"
+ }
+ },
+ "jest-diff": {
+ "version": "19.0.0",
+ "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-19.0.0.tgz",
+ "integrity": "sha1-0VY8/FbItgIymI+8BdTRbtkPBjw=",
+ "dev": true,
+ "requires": {
+ "chalk": "^1.1.3",
+ "diff": "^3.0.0",
+ "jest-matcher-utils": "^19.0.0",
+ "pretty-format": "^19.0.0"
+ }
+ },
+ "jest-environment-jsdom": {
+ "version": "19.0.2",
+ "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-19.0.2.tgz",
+ "integrity": "sha1-ztqFnEpLlKs15N59q1S5JvKT5KM=",
+ "dev": true,
+ "requires": {
+ "jest-mock": "^19.0.0",
+ "jest-util": "^19.0.2",
+ "jsdom": "^9.11.0"
+ }
+ },
+ "jest-environment-node": {
+ "version": "19.0.2",
+ "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-19.0.2.tgz",
+ "integrity": "sha1-boQHnbh+0h0MBeH5Zp8gexFv6Zs=",
+ "dev": true,
+ "requires": {
+ "jest-mock": "^19.0.0",
+ "jest-util": "^19.0.2"
+ }
+ },
+ "jest-file-exists": {
+ "version": "19.0.0",
+ "resolved": "https://registry.npmjs.org/jest-file-exists/-/jest-file-exists-19.0.0.tgz",
+ "integrity": "sha1-zKLlh6EeyS4kz+qz+KlNZX8/zrg=",
+ "dev": true
+ },
+ "jest-haste-map": {
+ "version": "19.0.2",
+ "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-19.0.2.tgz",
+ "integrity": "sha1-KGSEw6Fuhtp4crCHfDXc4ww9bwc=",
+ "dev": true,
+ "requires": {
+ "fb-watchman": "^2.0.0",
+ "graceful-fs": "^4.1.6",
+ "micromatch": "^2.3.11",
+ "sane": "~1.5.0",
+ "worker-farm": "^1.3.1"
+ },
+ "dependencies": {
+ "arr-diff": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
+ "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
+ "dev": true,
+ "requires": {
+ "arr-flatten": "^1.0.1"
+ }
+ },
+ "array-unique": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
+ "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=",
+ "dev": true
+ },
+ "braces": {
+ "version": "1.8.5",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
+ "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
+ "dev": true,
+ "requires": {
+ "expand-range": "^1.8.1",
+ "preserve": "^0.2.0",
+ "repeat-element": "^1.1.2"
+ }
+ },
+ "expand-brackets": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
+ "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
+ "dev": true,
+ "requires": {
+ "is-posix-bracket": "^0.1.0"
+ }
+ },
+ "extglob": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
+ "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^1.0.0"
+ }
+ },
+ "is-extglob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
+ "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=",
+ "dev": true
+ },
+ "is-glob": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
+ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^1.0.0"
+ }
+ },
+ "micromatch": {
+ "version": "2.3.11",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",
+ "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=",
+ "dev": true,
+ "requires": {
+ "arr-diff": "^2.0.0",
+ "array-unique": "^0.2.1",
+ "braces": "^1.8.2",
+ "expand-brackets": "^0.1.4",
+ "extglob": "^0.3.1",
+ "filename-regex": "^2.0.0",
+ "is-extglob": "^1.0.0",
+ "is-glob": "^2.0.1",
+ "kind-of": "^3.0.2",
+ "normalize-path": "^2.0.1",
+ "object.omit": "^2.0.0",
+ "parse-glob": "^3.0.4",
+ "regex-cache": "^0.4.2"
+ }
+ }
+ }
+ },
+ "jest-jasmine2": {
+ "version": "19.0.2",
+ "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-19.0.2.tgz",
+ "integrity": "sha1-FnmRrIJZgfsagArxJug6/MqDLHM=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.6",
+ "jest-matcher-utils": "^19.0.0",
+ "jest-matchers": "^19.0.0",
+ "jest-message-util": "^19.0.0",
+ "jest-snapshot": "^19.0.2"
+ }
+ },
+ "jest-matcher-utils": {
+ "version": "19.0.0",
+ "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-19.0.0.tgz",
+ "integrity": "sha1-Xs2bY1ZdKwAfYfv37Ex/U3lkVk0=",
+ "dev": true,
+ "requires": {
+ "chalk": "^1.1.3",
+ "pretty-format": "^19.0.0"
+ }
+ },
+ "jest-matchers": {
+ "version": "19.0.0",
+ "resolved": "https://registry.npmjs.org/jest-matchers/-/jest-matchers-19.0.0.tgz",
+ "integrity": "sha1-x07Mbr/sBvOEdnuk1vpKQtZ1V1Q=",
+ "dev": true,
+ "requires": {
+ "jest-diff": "^19.0.0",
+ "jest-matcher-utils": "^19.0.0",
+ "jest-message-util": "^19.0.0",
+ "jest-regex-util": "^19.0.0"
+ }
+ },
+ "jest-message-util": {
+ "version": "19.0.0",
+ "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-19.0.0.tgz",
+ "integrity": "sha1-cheWuJwOTXYWBvm6jLgoo7YkZBY=",
+ "dev": true,
+ "requires": {
+ "chalk": "^1.1.1",
+ "micromatch": "^2.3.11"
+ },
+ "dependencies": {
+ "arr-diff": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
+ "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
+ "dev": true,
+ "requires": {
+ "arr-flatten": "^1.0.1"
+ }
+ },
+ "array-unique": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
+ "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=",
+ "dev": true
+ },
+ "braces": {
+ "version": "1.8.5",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
+ "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
+ "dev": true,
+ "requires": {
+ "expand-range": "^1.8.1",
+ "preserve": "^0.2.0",
+ "repeat-element": "^1.1.2"
+ }
+ },
+ "expand-brackets": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
+ "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
+ "dev": true,
+ "requires": {
+ "is-posix-bracket": "^0.1.0"
+ }
+ },
+ "extglob": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
+ "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^1.0.0"
+ }
+ },
+ "is-extglob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
+ "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=",
+ "dev": true
+ },
+ "is-glob": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
+ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^1.0.0"
+ }
+ },
+ "micromatch": {
+ "version": "2.3.11",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",
+ "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=",
+ "dev": true,
+ "requires": {
+ "arr-diff": "^2.0.0",
+ "array-unique": "^0.2.1",
+ "braces": "^1.8.2",
+ "expand-brackets": "^0.1.4",
+ "extglob": "^0.3.1",
+ "filename-regex": "^2.0.0",
+ "is-extglob": "^1.0.0",
+ "is-glob": "^2.0.1",
+ "kind-of": "^3.0.2",
+ "normalize-path": "^2.0.1",
+ "object.omit": "^2.0.0",
+ "parse-glob": "^3.0.4",
+ "regex-cache": "^0.4.2"
+ }
+ }
+ }
+ },
+ "jest-mock": {
+ "version": "19.0.0",
+ "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-19.0.0.tgz",
+ "integrity": "sha1-ZwOGQelgerLOCOxKjLg6q7yJnQE=",
+ "dev": true
+ },
+ "jest-regex-util": {
+ "version": "19.0.0",
+ "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-19.0.0.tgz",
+ "integrity": "sha1-t3VFhxEq7eFFZRC7H2r+dO9ZhpE=",
+ "dev": true
+ },
+ "jest-resolve": {
+ "version": "19.0.2",
+ "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-19.0.2.tgz",
+ "integrity": "sha1-V5NXXeTweuwy99f/DGwYGWPu+zw=",
+ "dev": true,
+ "requires": {
+ "browser-resolve": "^1.11.2",
+ "jest-haste-map": "^19.0.0",
+ "resolve": "^1.2.0"
+ }
+ },
+ "jest-resolve-dependencies": {
+ "version": "19.0.0",
+ "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-19.0.0.tgz",
+ "integrity": "sha1-p0GtH6CUFA5k7PJkKlBPg07OIu4=",
+ "dev": true,
+ "requires": {
+ "jest-file-exists": "^19.0.0"
+ }
+ },
+ "jest-runtime": {
+ "version": "19.0.4",
+ "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-19.0.4.tgz",
+ "integrity": "sha1-8WfZ8TR3UvICc2EGeSZIU0n8wkU=",
+ "dev": true,
+ "requires": {
+ "babel-core": "^6.0.0",
+ "babel-jest": "^19.0.0",
+ "babel-plugin-istanbul": "^4.0.0",
+ "chalk": "^1.1.3",
+ "graceful-fs": "^4.1.6",
+ "jest-config": "^19.0.2",
+ "jest-file-exists": "^19.0.0",
+ "jest-haste-map": "^19.0.0",
+ "jest-regex-util": "^19.0.0",
+ "jest-resolve": "^19.0.2",
+ "jest-util": "^19.0.2",
+ "json-stable-stringify": "^1.0.1",
+ "micromatch": "^2.3.11",
+ "strip-bom": "3.0.0",
+ "yargs": "^6.3.0"
+ },
+ "dependencies": {
+ "arr-diff": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
+ "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
+ "dev": true,
+ "requires": {
+ "arr-flatten": "^1.0.1"
+ }
+ },
+ "array-unique": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
+ "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=",
+ "dev": true
+ },
+ "braces": {
+ "version": "1.8.5",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
+ "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
+ "dev": true,
+ "requires": {
+ "expand-range": "^1.8.1",
+ "preserve": "^0.2.0",
+ "repeat-element": "^1.1.2"
+ }
+ },
+ "camelcase": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz",
+ "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=",
+ "dev": true
+ },
+ "cliui": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
+ "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
+ "dev": true,
+ "requires": {
+ "string-width": "^1.0.1",
+ "strip-ansi": "^3.0.1",
+ "wrap-ansi": "^2.0.0"
+ }
+ },
+ "expand-brackets": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
+ "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
+ "dev": true,
+ "requires": {
+ "is-posix-bracket": "^0.1.0"
+ }
+ },
+ "extglob": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
+ "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^1.0.0"
+ }
+ },
+ "is-extglob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
+ "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=",
+ "dev": true
+ },
+ "is-glob": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
+ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^1.0.0"
+ }
+ },
+ "json-stable-stringify": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz",
+ "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=",
+ "dev": true,
+ "requires": {
+ "jsonify": "~0.0.0"
+ }
+ },
+ "micromatch": {
+ "version": "2.3.11",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",
+ "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=",
+ "dev": true,
+ "requires": {
+ "arr-diff": "^2.0.0",
+ "array-unique": "^0.2.1",
+ "braces": "^1.8.2",
+ "expand-brackets": "^0.1.4",
+ "extglob": "^0.3.1",
+ "filename-regex": "^2.0.0",
+ "is-extglob": "^1.0.0",
+ "is-glob": "^2.0.1",
+ "kind-of": "^3.0.2",
+ "normalize-path": "^2.0.1",
+ "object.omit": "^2.0.0",
+ "parse-glob": "^3.0.4",
+ "regex-cache": "^0.4.2"
+ }
+ },
+ "strip-bom": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
+ "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
+ "dev": true
+ },
+ "yargs": {
+ "version": "6.6.0",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz",
+ "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=",
+ "dev": true,
+ "requires": {
+ "camelcase": "^3.0.0",
+ "cliui": "^3.2.0",
+ "decamelize": "^1.1.1",
+ "get-caller-file": "^1.0.1",
+ "os-locale": "^1.4.0",
+ "read-pkg-up": "^1.0.1",
+ "require-directory": "^2.1.1",
+ "require-main-filename": "^1.0.1",
+ "set-blocking": "^2.0.0",
+ "string-width": "^1.0.2",
+ "which-module": "^1.0.0",
+ "y18n": "^3.2.1",
+ "yargs-parser": "^4.2.0"
+ }
+ }
+ }
+ },
+ "jest-snapshot": {
+ "version": "19.0.2",
+ "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-19.0.2.tgz",
+ "integrity": "sha1-nBshYhT3GHw4v9XHCx76sWsP9Qs=",
+ "dev": true,
+ "requires": {
+ "chalk": "^1.1.3",
+ "jest-diff": "^19.0.0",
+ "jest-file-exists": "^19.0.0",
+ "jest-matcher-utils": "^19.0.0",
+ "jest-util": "^19.0.2",
+ "natural-compare": "^1.4.0",
+ "pretty-format": "^19.0.0"
+ }
+ },
+ "jest-util": {
+ "version": "19.0.2",
+ "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-19.0.2.tgz",
+ "integrity": "sha1-4KAjKiq55rK1Nmi9s1NMK1l37UE=",
+ "dev": true,
+ "requires": {
+ "chalk": "^1.1.1",
+ "graceful-fs": "^4.1.6",
+ "jest-file-exists": "^19.0.0",
+ "jest-message-util": "^19.0.0",
+ "jest-mock": "^19.0.0",
+ "jest-validate": "^19.0.2",
+ "leven": "^2.0.0",
+ "mkdirp": "^0.5.1"
+ },
+ "dependencies": {
+ "leven": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz",
+ "integrity": "sha1-wuep93IJTe6dNCAq6KzORoeHVYA=",
+ "dev": true
+ }
+ }
+ },
+ "jest-validate": {
+ "version": "19.0.2",
+ "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-19.0.2.tgz",
+ "integrity": "sha1-3FNN9fEnjVtj3zKxQkHU2/ckTAw=",
+ "dev": true,
+ "requires": {
+ "chalk": "^1.1.1",
+ "jest-matcher-utils": "^19.0.0",
+ "leven": "^2.0.0",
+ "pretty-format": "^19.0.0"
+ },
+ "dependencies": {
+ "leven": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz",
+ "integrity": "sha1-wuep93IJTe6dNCAq6KzORoeHVYA=",
+ "dev": true
+ }
+ }
+ },
+ "jquery": {
+ "version": "2.2.4",
+ "resolved": "https://registry.npmjs.org/jquery/-/jquery-2.2.4.tgz",
+ "integrity": "sha1-LInWiJterFIqfuoywUUhVZxsvwI=",
+ "dev": true
+ },
+ "js-base64": {
+ "version": "2.5.2",
+ "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.2.tgz",
+ "integrity": "sha512-Vg8czh0Q7sFBSUMWWArX/miJeBWYBPpdU/3M/DKSaekLMqrqVPaedp+5mZhie/r0lgrcaYBfwXatEew6gwgiQQ==",
+ "dev": true
+ },
+ "js-tokens": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
+ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
+ },
+ "js-yaml": {
+ "version": "3.7.0",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.7.0.tgz",
+ "integrity": "sha1-XJZ93YN6m/3KXy3oQlOr6KHAO4A=",
+ "dev": true,
+ "requires": {
+ "argparse": "^1.0.7",
+ "esprima": "^2.6.0"
+ },
+ "dependencies": {
+ "esprima": {
+ "version": "2.7.3",
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz",
+ "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=",
+ "dev": true
+ }
+ }
+ },
+ "jsbn": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
+ "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=",
+ "dev": true
+ },
+ "jsdom": {
+ "version": "9.12.0",
+ "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-9.12.0.tgz",
+ "integrity": "sha1-6MVG//ywbADUgzyoRBD+1/igl9Q=",
+ "dev": true,
+ "requires": {
+ "abab": "^1.0.3",
+ "acorn": "^4.0.4",
+ "acorn-globals": "^3.1.0",
+ "array-equal": "^1.0.0",
+ "content-type-parser": "^1.0.1",
+ "cssom": ">= 0.3.2 < 0.4.0",
+ "cssstyle": ">= 0.2.37 < 0.3.0",
+ "escodegen": "^1.6.1",
+ "html-encoding-sniffer": "^1.0.1",
+ "nwmatcher": ">= 1.3.9 < 2.0.0",
+ "parse5": "^1.5.1",
+ "request": "^2.79.0",
+ "sax": "^1.2.1",
+ "symbol-tree": "^3.2.1",
+ "tough-cookie": "^2.3.2",
+ "webidl-conversions": "^4.0.0",
+ "whatwg-encoding": "^1.0.1",
+ "whatwg-url": "^4.3.0",
+ "xml-name-validator": "^2.0.1"
+ },
+ "dependencies": {
+ "acorn": {
+ "version": "4.0.13",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz",
+ "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=",
+ "dev": true
+ }
+ }
+ },
+ "jsesc": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz",
+ "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=",
+ "dev": true
+ },
+ "json-schema": {
+ "version": "0.2.3",
+ "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
+ "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=",
+ "dev": true
+ },
+ "json-schema-traverse": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
+ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
+ "dev": true
+ },
+ "json-stable-stringify": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz",
+ "integrity": "sha1-YRwj6BTbN1Un34URk9tZ3Sryf0U=",
+ "dev": true,
+ "requires": {
+ "jsonify": "~0.0.0"
+ }
+ },
+ "json-stringify-safe": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
+ "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=",
+ "dev": true
+ },
+ "json3": {
+ "version": "3.3.3",
+ "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.3.tgz",
+ "integrity": "sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA==",
+ "dev": true
+ },
+ "json5": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
+ "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=",
+ "dev": true
+ },
+ "jsonify": {
+ "version": "0.0.0",
+ "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz",
+ "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=",
+ "dev": true
+ },
+ "jsonparse": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz",
+ "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=",
+ "dev": true
+ },
+ "jsonpointer": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz",
+ "integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk=",
+ "dev": true
+ },
+ "jsprim": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz",
+ "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=",
+ "dev": true,
+ "requires": {
+ "assert-plus": "1.0.0",
+ "extsprintf": "1.3.0",
+ "json-schema": "0.2.3",
+ "verror": "1.10.0"
+ }
+ },
+ "jstransform": {
+ "version": "11.0.3",
+ "resolved": "https://registry.npmjs.org/jstransform/-/jstransform-11.0.3.tgz",
+ "integrity": "sha1-CaeJk+CuTU70SH9hVakfYZDLQiM=",
+ "dev": true,
+ "requires": {
+ "base62": "^1.1.0",
+ "commoner": "^0.10.1",
+ "esprima-fb": "^15001.1.0-dev-harmony-fb",
+ "object-assign": "^2.0.0",
+ "source-map": "^0.4.2"
+ },
+ "dependencies": {
+ "esprima-fb": {
+ "version": "15001.1.0-dev-harmony-fb",
+ "resolved": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-15001.1.0-dev-harmony-fb.tgz",
+ "integrity": "sha1-MKlHMDxrjV6VW+4rmbHSMyBqaQE=",
+ "dev": true
+ },
+ "object-assign": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-2.1.1.tgz",
+ "integrity": "sha1-Q8NuXVaf+OSBbE76i+AtJpZ8GKo=",
+ "dev": true
+ },
+ "source-map": {
+ "version": "0.4.4",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
+ "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
+ "dev": true,
+ "requires": {
+ "amdefine": ">=0.0.4"
+ }
+ }
+ }
+ },
+ "jsx-loader": {
+ "version": "0.13.2",
+ "resolved": "https://registry.npmjs.org/jsx-loader/-/jsx-loader-0.13.2.tgz",
+ "integrity": "sha1-l2f2Q5dcePXlq+upvFeIUpfnMtQ=",
+ "dev": true,
+ "requires": {
+ "jstransform": "11",
+ "loader-utils": "^0.2.2"
+ }
+ },
+ "keycode": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/keycode/-/keycode-2.2.0.tgz",
+ "integrity": "sha1-PQr1bce4uOXLqNCpfxByBO7CKwQ=",
+ "dev": true
+ },
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ },
+ "labeled-stream-splicer": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-1.0.2.tgz",
+ "integrity": "sha1-RhUzFTd4SYHo/SZOHzpDTE4N3WU=",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.1",
+ "isarray": "~0.0.1",
+ "stream-splicer": "^1.1.0"
+ }
+ },
+ "lazy-cache": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz",
+ "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=",
+ "dev": true
+ },
+ "lcid": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz",
+ "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=",
+ "dev": true,
+ "requires": {
+ "invert-kv": "^1.0.0"
+ }
+ },
+ "leven": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/leven/-/leven-1.0.2.tgz",
+ "integrity": "sha1-kUS27ryl8dBoAWnxpncNzqYLdcM=",
+ "dev": true
+ },
+ "levn": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/levn/-/levn-0.2.5.tgz",
+ "integrity": "sha1-uo0znQykphDjo/FFucr0iAcVUFQ=",
+ "dev": true,
+ "requires": {
+ "prelude-ls": "~1.1.0",
+ "type-check": "~0.3.1"
+ }
+ },
+ "lexical-scope": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/lexical-scope/-/lexical-scope-1.2.0.tgz",
+ "integrity": "sha1-/Ope3HBKSzqHls3KQZw6CvryLfQ=",
+ "dev": true,
+ "requires": {
+ "astw": "^2.0.0"
+ }
+ },
+ "liftoff": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz",
+ "integrity": "sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=",
+ "dev": true,
+ "requires": {
+ "extend": "^3.0.0",
+ "findup-sync": "^2.0.0",
+ "fined": "^1.0.1",
+ "flagged-respawn": "^1.0.0",
+ "is-plain-object": "^2.0.4",
+ "object.map": "^1.0.0",
+ "rechoir": "^0.6.2",
+ "resolve": "^1.1.7"
+ }
+ },
+ "load-json-file": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
+ "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.2",
+ "parse-json": "^2.2.0",
+ "pify": "^2.0.0",
+ "pinkie-promise": "^2.0.0",
+ "strip-bom": "^2.0.0"
+ },
+ "dependencies": {
+ "strip-bom": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
+ "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
+ "dev": true,
+ "requires": {
+ "is-utf8": "^0.2.0"
+ }
+ }
+ }
+ },
+ "loader-fs-cache": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/loader-fs-cache/-/loader-fs-cache-1.0.3.tgz",
+ "integrity": "sha512-ldcgZpjNJj71n+2Mf6yetz+c9bM4xpKtNds4LbqXzU/PTdeAX0g3ytnU1AJMEcTk2Lex4Smpe3Q/eCTsvUBxbA==",
+ "dev": true,
+ "requires": {
+ "find-cache-dir": "^0.1.1",
+ "mkdirp": "^0.5.1"
+ }
+ },
+ "loader-utils": {
+ "version": "0.2.17",
+ "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz",
+ "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=",
+ "dev": true,
+ "requires": {
+ "big.js": "^3.1.3",
+ "emojis-list": "^2.0.0",
+ "json5": "^0.5.0",
+ "object-assign": "^4.0.1"
+ }
+ },
+ "locate-path": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
+ "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
+ "dev": true,
+ "requires": {
+ "p-locate": "^2.0.0",
+ "path-exists": "^3.0.0"
+ },
+ "dependencies": {
+ "path-exists": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
+ "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
+ "dev": true
+ }
+ }
+ },
+ "lodash": {
+ "version": "4.17.15",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
+ "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==",
+ "dev": true
+ },
+ "lodash._arraycopy": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/lodash._arraycopy/-/lodash._arraycopy-3.0.0.tgz",
+ "integrity": "sha1-due3wfH7klRzdIeKVi7Qaj5Q9uE=",
+ "dev": true
+ },
+ "lodash._arrayeach": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/lodash._arrayeach/-/lodash._arrayeach-3.0.0.tgz",
+ "integrity": "sha1-urFWsqkNPxu9XGU0AzSeXlkz754=",
+ "dev": true
+ },
+ "lodash._arraymap": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/lodash._arraymap/-/lodash._arraymap-3.0.0.tgz",
+ "integrity": "sha1-Go/Q9MDfS2HeoHbXF83Jfwo8PmY=",
+ "dev": true
+ },
+ "lodash._baseassign": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz",
+ "integrity": "sha1-jDigmVAPIVrQnlnxci/QxSv+Ck4=",
+ "dev": true,
+ "requires": {
+ "lodash._basecopy": "^3.0.0",
+ "lodash.keys": "^3.0.0"
+ }
+ },
+ "lodash._baseclone": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/lodash._baseclone/-/lodash._baseclone-3.3.0.tgz",
+ "integrity": "sha1-MDUZv2OT/n5C802LYw73eU41Qrc=",
+ "dev": true,
+ "requires": {
+ "lodash._arraycopy": "^3.0.0",
+ "lodash._arrayeach": "^3.0.0",
+ "lodash._baseassign": "^3.0.0",
+ "lodash._basefor": "^3.0.0",
+ "lodash.isarray": "^3.0.0",
+ "lodash.keys": "^3.0.0"
+ }
+ },
+ "lodash._basecopy": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz",
+ "integrity": "sha1-jaDmqHbPNEwK2KVIghEd08XHyjY=",
+ "dev": true
+ },
+ "lodash._basedifference": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/lodash._basedifference/-/lodash._basedifference-3.0.3.tgz",
+ "integrity": "sha1-8sIEKWwqeOArOJCBtu3KyTPPYpw=",
+ "dev": true,
+ "requires": {
+ "lodash._baseindexof": "^3.0.0",
+ "lodash._cacheindexof": "^3.0.0",
+ "lodash._createcache": "^3.0.0"
+ }
+ },
+ "lodash._baseflatten": {
+ "version": "3.1.4",
+ "resolved": "https://registry.npmjs.org/lodash._baseflatten/-/lodash._baseflatten-3.1.4.tgz",
+ "integrity": "sha1-B3D/gBMa9uNPO1EXlqe6UhTmX/c=",
+ "dev": true,
+ "requires": {
+ "lodash.isarguments": "^3.0.0",
+ "lodash.isarray": "^3.0.0"
+ }
+ },
+ "lodash._basefor": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/lodash._basefor/-/lodash._basefor-3.0.3.tgz",
+ "integrity": "sha1-dVC06SGO8J+tJDQ7YSAhx5tMIMI=",
+ "dev": true
+ },
+ "lodash._baseindexof": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/lodash._baseindexof/-/lodash._baseindexof-3.1.0.tgz",
+ "integrity": "sha1-/lK1OhxnYeQmGNZU5KJXie1hgiw=",
+ "dev": true
+ },
+ "lodash._basetostring": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz",
+ "integrity": "sha1-0YYdh3+CSlL2aYMtyvPuFVZqB9U=",
+ "dev": true
+ },
+ "lodash._basevalues": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz",
+ "integrity": "sha1-W3dXYoAr3j0yl1A+JjAIIP32Ybc=",
+ "dev": true
+ },
+ "lodash._bindcallback": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz",
+ "integrity": "sha1-5THCdkTPi1epnhftlbNcdIeJOS4=",
+ "dev": true
+ },
+ "lodash._cacheindexof": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/lodash._cacheindexof/-/lodash._cacheindexof-3.0.2.tgz",
+ "integrity": "sha1-PcaayCSY0u5ePOVgkbr9Ktx73pI=",
+ "dev": true
+ },
+ "lodash._createassigner": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/lodash._createassigner/-/lodash._createassigner-3.1.1.tgz",
+ "integrity": "sha1-g4pbri/aymOsIt7o4Z+k5taXCxE=",
+ "dev": true,
+ "requires": {
+ "lodash._bindcallback": "^3.0.0",
+ "lodash._isiterateecall": "^3.0.0",
+ "lodash.restparam": "^3.0.0"
+ }
+ },
+ "lodash._createcache": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/lodash._createcache/-/lodash._createcache-3.1.2.tgz",
+ "integrity": "sha1-VtagZAF2JeeevKa4AY4XRAvc8JM=",
+ "dev": true,
+ "requires": {
+ "lodash._getnative": "^3.0.0"
+ }
+ },
+ "lodash._createcompounder": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/lodash._createcompounder/-/lodash._createcompounder-3.0.0.tgz",
+ "integrity": "sha1-XdLLVTctbnDg4jkvsjBNZjEJEHU=",
+ "dev": true,
+ "requires": {
+ "lodash.deburr": "^3.0.0",
+ "lodash.words": "^3.0.0"
+ }
+ },
+ "lodash._escapehtmlchar": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/lodash._escapehtmlchar/-/lodash._escapehtmlchar-2.4.1.tgz",
+ "integrity": "sha1-32fDu2t+jh6DGrSL+geVuSr+iZ0=",
+ "dev": true,
+ "requires": {
+ "lodash._htmlescapes": "~2.4.1"
+ }
+ },
+ "lodash._escapestringchar": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/lodash._escapestringchar/-/lodash._escapestringchar-2.4.1.tgz",
+ "integrity": "sha1-7P4iYYoq3lC/7qQ5N+Ud9m8O23I=",
+ "dev": true
+ },
+ "lodash._getnative": {
+ "version": "3.9.1",
+ "resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz",
+ "integrity": "sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U=",
+ "dev": true
+ },
+ "lodash._htmlescapes": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/lodash._htmlescapes/-/lodash._htmlescapes-2.4.1.tgz",
+ "integrity": "sha1-MtFL8IRLbeb4tioFG09nwii2JMs=",
+ "dev": true
+ },
+ "lodash._isiterateecall": {
+ "version": "3.0.9",
+ "resolved": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz",
+ "integrity": "sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw=",
+ "dev": true
+ },
+ "lodash._isnative": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/lodash._isnative/-/lodash._isnative-2.4.1.tgz",
+ "integrity": "sha1-PqZAS3hKe+g2x7V1gOHN95sUgyw=",
+ "dev": true
+ },
+ "lodash._objecttypes": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/lodash._objecttypes/-/lodash._objecttypes-2.4.1.tgz",
+ "integrity": "sha1-fAt/admKH3ZSn4kLDNsbTf7BHBE=",
+ "dev": true
+ },
+ "lodash._pickbyarray": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/lodash._pickbyarray/-/lodash._pickbyarray-3.0.2.tgz",
+ "integrity": "sha1-H4mNlgfrVgsOFnOEt3x8bRCKpMU=",
+ "dev": true
+ },
+ "lodash._pickbycallback": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/lodash._pickbycallback/-/lodash._pickbycallback-3.0.0.tgz",
+ "integrity": "sha1-/2G5oBens699MObFPeKK+hm4dQo=",
+ "dev": true,
+ "requires": {
+ "lodash._basefor": "^3.0.0",
+ "lodash.keysin": "^3.0.0"
+ }
+ },
+ "lodash._reescape": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/lodash._reescape/-/lodash._reescape-3.0.0.tgz",
+ "integrity": "sha1-Kx1vXf4HyKNVdT5fJ/rH8c3hYWo=",
+ "dev": true
+ },
+ "lodash._reevaluate": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz",
+ "integrity": "sha1-WLx0xAZklTrgsSTYBpltrKQx4u0=",
+ "dev": true
+ },
+ "lodash._reinterpolate": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz",
+ "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=",
+ "dev": true
+ },
+ "lodash._reunescapedhtml": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/lodash._reunescapedhtml/-/lodash._reunescapedhtml-2.4.1.tgz",
+ "integrity": "sha1-dHxPxAED6zu4oJduVx96JlnpO6c=",
+ "dev": true,
+ "requires": {
+ "lodash._htmlescapes": "~2.4.1",
+ "lodash.keys": "~2.4.1"
+ },
+ "dependencies": {
+ "lodash.keys": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-2.4.1.tgz",
+ "integrity": "sha1-SN6kbfj/djKxDXBrissmWR4rNyc=",
+ "dev": true,
+ "requires": {
+ "lodash._isnative": "~2.4.1",
+ "lodash._shimkeys": "~2.4.1",
+ "lodash.isobject": "~2.4.1"
+ }
+ }
+ }
+ },
+ "lodash._root": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/lodash._root/-/lodash._root-3.0.1.tgz",
+ "integrity": "sha1-+6HEUkwZ7ppfgTa0YJ8BfPTe1pI=",
+ "dev": true
+ },
+ "lodash._shimkeys": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/lodash._shimkeys/-/lodash._shimkeys-2.4.1.tgz",
+ "integrity": "sha1-bpzJZm/wgfC1psl4uD4kLmlJ0gM=",
+ "dev": true,
+ "requires": {
+ "lodash._objecttypes": "~2.4.1"
+ }
+ },
+ "lodash.assign": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz",
+ "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=",
+ "dev": true
+ },
+ "lodash.camelcase": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-3.0.1.tgz",
+ "integrity": "sha1-kyyLh/ikN3iXxnGXUzKC+Xrqwpg=",
+ "dev": true,
+ "requires": {
+ "lodash._createcompounder": "^3.0.0"
+ }
+ },
+ "lodash.clonedeep": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-3.0.2.tgz",
+ "integrity": "sha1-oKHkDYKl6on/WxR7hETtY9koJ9s=",
+ "dev": true,
+ "requires": {
+ "lodash._baseclone": "^3.0.0",
+ "lodash._bindcallback": "^3.0.0"
+ }
+ },
+ "lodash.deburr": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/lodash.deburr/-/lodash.deburr-3.2.0.tgz",
+ "integrity": "sha1-baj1QzSjZqfPTEx2742Aqhs2XtU=",
+ "dev": true,
+ "requires": {
+ "lodash._root": "^3.0.0"
+ }
+ },
+ "lodash.defaults": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-3.1.2.tgz",
+ "integrity": "sha1-xzCLGNv4vJNy1wGnNJPGEZK9Liw=",
+ "dev": true,
+ "requires": {
+ "lodash.assign": "^3.0.0",
+ "lodash.restparam": "^3.0.0"
+ },
+ "dependencies": {
+ "lodash.assign": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-3.2.0.tgz",
+ "integrity": "sha1-POnwI0tLIiPilrj6CsH+6OvKZPo=",
+ "dev": true,
+ "requires": {
+ "lodash._baseassign": "^3.0.0",
+ "lodash._createassigner": "^3.0.0",
+ "lodash.keys": "^3.0.0"
+ }
+ }
+ }
+ },
+ "lodash.escape": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-3.2.0.tgz",
+ "integrity": "sha1-mV7g3BjBtIzJLv+ucaEKq1tIdpg=",
+ "dev": true,
+ "requires": {
+ "lodash._root": "^3.0.0"
+ }
+ },
+ "lodash.isarguments": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz",
+ "integrity": "sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo=",
+ "dev": true
+ },
+ "lodash.isarray": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz",
+ "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=",
+ "dev": true
+ },
+ "lodash.isobject": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/lodash.isobject/-/lodash.isobject-2.4.1.tgz",
+ "integrity": "sha1-Wi5H/mmVPx7mMafrof5k0tBlWPU=",
+ "dev": true,
+ "requires": {
+ "lodash._objecttypes": "~2.4.1"
+ }
+ },
+ "lodash.isplainobject": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-3.2.0.tgz",
+ "integrity": "sha1-moI4rhayAEMpYM1zRlEtASP79MU=",
+ "dev": true,
+ "requires": {
+ "lodash._basefor": "^3.0.0",
+ "lodash.isarguments": "^3.0.0",
+ "lodash.keysin": "^3.0.0"
+ }
+ },
+ "lodash.istypedarray": {
+ "version": "3.0.6",
+ "resolved": "https://registry.npmjs.org/lodash.istypedarray/-/lodash.istypedarray-3.0.6.tgz",
+ "integrity": "sha1-yaR3SYYHUB2OhJTSg7h8OSgc72I=",
+ "dev": true
+ },
+ "lodash.keys": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz",
+ "integrity": "sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=",
+ "dev": true,
+ "requires": {
+ "lodash._getnative": "^3.0.0",
+ "lodash.isarguments": "^3.0.0",
+ "lodash.isarray": "^3.0.0"
+ }
+ },
+ "lodash.keysin": {
+ "version": "3.0.8",
+ "resolved": "https://registry.npmjs.org/lodash.keysin/-/lodash.keysin-3.0.8.tgz",
+ "integrity": "sha1-IsRJPrvtsUJ5YqVLRFssinZ/tH8=",
+ "dev": true,
+ "requires": {
+ "lodash.isarguments": "^3.0.0",
+ "lodash.isarray": "^3.0.0"
+ }
+ },
+ "lodash.memoize": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-3.0.4.tgz",
+ "integrity": "sha1-LcvSwofLwKVcxCMovQxzYVDVPj8=",
+ "dev": true
+ },
+ "lodash.merge": {
+ "version": "3.3.2",
+ "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-3.3.2.tgz",
+ "integrity": "sha1-DZDZPtY3sYeEN7s+IWASYNev6ZQ=",
+ "dev": true,
+ "requires": {
+ "lodash._arraycopy": "^3.0.0",
+ "lodash._arrayeach": "^3.0.0",
+ "lodash._createassigner": "^3.0.0",
+ "lodash._getnative": "^3.0.0",
+ "lodash.isarguments": "^3.0.0",
+ "lodash.isarray": "^3.0.0",
+ "lodash.isplainobject": "^3.0.0",
+ "lodash.istypedarray": "^3.0.0",
+ "lodash.keys": "^3.0.0",
+ "lodash.keysin": "^3.0.0",
+ "lodash.toplainobject": "^3.0.0"
+ }
+ },
+ "lodash.omit": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/lodash.omit/-/lodash.omit-3.1.0.tgz",
+ "integrity": "sha1-iX/jguZBPZrJfGH3jtHgV6AK+fM=",
+ "dev": true,
+ "requires": {
+ "lodash._arraymap": "^3.0.0",
+ "lodash._basedifference": "^3.0.0",
+ "lodash._baseflatten": "^3.0.0",
+ "lodash._bindcallback": "^3.0.0",
+ "lodash._pickbyarray": "^3.0.0",
+ "lodash._pickbycallback": "^3.0.0",
+ "lodash.keysin": "^3.0.0",
+ "lodash.restparam": "^3.0.0"
+ }
+ },
+ "lodash.pickby": {
+ "version": "4.6.0",
+ "resolved": "https://registry.npmjs.org/lodash.pickby/-/lodash.pickby-4.6.0.tgz",
+ "integrity": "sha1-feoh2MGNdwOifHBMFdO4SmfjOv8=",
+ "dev": true
+ },
+ "lodash.restparam": {
+ "version": "3.6.1",
+ "resolved": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz",
+ "integrity": "sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU=",
+ "dev": true
+ },
+ "lodash.template": {
+ "version": "3.6.2",
+ "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-3.6.2.tgz",
+ "integrity": "sha1-+M3sxhaaJVvpCYrosMU9N4kx0U8=",
+ "dev": true,
+ "requires": {
+ "lodash._basecopy": "^3.0.0",
+ "lodash._basetostring": "^3.0.0",
+ "lodash._basevalues": "^3.0.0",
+ "lodash._isiterateecall": "^3.0.0",
+ "lodash._reinterpolate": "^3.0.0",
+ "lodash.escape": "^3.0.0",
+ "lodash.keys": "^3.0.0",
+ "lodash.restparam": "^3.0.0",
+ "lodash.templatesettings": "^3.0.0"
+ }
+ },
+ "lodash.templatesettings": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz",
+ "integrity": "sha1-+zB4RHU7Zrnxr6VOJix0UwfbqOU=",
+ "dev": true,
+ "requires": {
+ "lodash._reinterpolate": "^3.0.0",
+ "lodash.escape": "^3.0.0"
+ }
+ },
+ "lodash.toplainobject": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/lodash.toplainobject/-/lodash.toplainobject-3.0.0.tgz",
+ "integrity": "sha1-KHkK2ULSk9eKpmOgfs9/UsoEGY0=",
+ "dev": true,
+ "requires": {
+ "lodash._basecopy": "^3.0.0",
+ "lodash.keysin": "^3.0.0"
+ }
+ },
+ "lodash.uniq": {
+ "version": "4.5.0",
+ "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz",
+ "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=",
+ "dev": true
+ },
+ "lodash.values": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/lodash.values/-/lodash.values-2.4.1.tgz",
+ "integrity": "sha1-q/UUQ2s8twUAFieXjLzzCxKA7qQ=",
+ "dev": true,
+ "requires": {
+ "lodash.keys": "~2.4.1"
+ },
+ "dependencies": {
+ "lodash.keys": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-2.4.1.tgz",
+ "integrity": "sha1-SN6kbfj/djKxDXBrissmWR4rNyc=",
+ "dev": true,
+ "requires": {
+ "lodash._isnative": "~2.4.1",
+ "lodash._shimkeys": "~2.4.1",
+ "lodash.isobject": "~2.4.1"
+ }
+ }
+ }
+ },
+ "lodash.words": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/lodash.words/-/lodash.words-3.2.0.tgz",
+ "integrity": "sha1-TiqGSbwIdFsXxpWxo86P7llmI7M=",
+ "dev": true,
+ "requires": {
+ "lodash._root": "^3.0.0"
+ }
+ },
+ "longest": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz",
+ "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=",
+ "dev": true
+ },
+ "loose-envify": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
+ "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
+ "requires": {
+ "js-tokens": "^3.0.0 || ^4.0.0"
+ }
+ },
+ "loud-rejection": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz",
+ "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=",
+ "dev": true,
+ "requires": {
+ "currently-unhandled": "^0.4.1",
+ "signal-exit": "^3.0.0"
+ }
+ },
+ "lru-cache": {
+ "version": "2.7.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz",
+ "integrity": "sha1-bUUk6LlV+V1PW1iFHOId1y+06VI=",
+ "dev": true
+ },
+ "make-iterator": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz",
+ "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
+ "dev": true
+ }
+ }
+ },
+ "makeerror": {
+ "version": "1.0.11",
+ "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz",
+ "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=",
+ "dev": true,
+ "requires": {
+ "tmpl": "1.0.x"
+ }
+ },
+ "map-cache": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
+ "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=",
+ "dev": true
+ },
+ "map-obj": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
+ "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
+ "dev": true
+ },
+ "map-stream": {
+ "version": "0.0.4",
+ "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.0.4.tgz",
+ "integrity": "sha1-XsbekCE+9sey65Nn6a3o2k79tos=",
+ "dev": true
+ },
+ "map-visit": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
+ "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=",
+ "dev": true,
+ "requires": {
+ "object-visit": "^1.0.0"
+ }
+ },
+ "math-expression-evaluator": {
+ "version": "1.2.22",
+ "resolved": "https://registry.npmjs.org/math-expression-evaluator/-/math-expression-evaluator-1.2.22.tgz",
+ "integrity": "sha512-L0j0tFVZBQQLeEjmWOvDLoRciIY8gQGWahvkztXUal8jH8R5Rlqo9GCvgqvXcy9LQhEWdQCVvzqAbxgYNt4blQ==",
+ "dev": true
+ },
+ "math-random": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz",
+ "integrity": "sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==",
+ "dev": true
+ },
+ "md5.js": {
+ "version": "1.3.5",
+ "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz",
+ "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==",
+ "dev": true,
+ "requires": {
+ "hash-base": "^3.0.0",
+ "inherits": "^2.0.1",
+ "safe-buffer": "^5.1.2"
+ }
+ },
+ "media-typer": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
+ "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=",
+ "dev": true
+ },
+ "memory-fs": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.3.0.tgz",
+ "integrity": "sha1-e8xrYp46Q+hx1+Kaymrop/FcuyA=",
+ "dev": true,
+ "requires": {
+ "errno": "^0.1.3",
+ "readable-stream": "^2.0.1"
+ }
+ },
+ "meow": {
+ "version": "3.7.0",
+ "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
+ "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
+ "dev": true,
+ "requires": {
+ "camelcase-keys": "^2.0.0",
+ "decamelize": "^1.1.2",
+ "loud-rejection": "^1.0.0",
+ "map-obj": "^1.0.1",
+ "minimist": "^1.1.3",
+ "normalize-package-data": "^2.3.4",
+ "object-assign": "^4.0.1",
+ "read-pkg-up": "^1.0.1",
+ "redent": "^1.0.0",
+ "trim-newlines": "^1.0.0"
+ }
+ },
+ "merge": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/merge/-/merge-1.2.1.tgz",
+ "integrity": "sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ==",
+ "dev": true
+ },
+ "merge-descriptors": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
+ "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=",
+ "dev": true
+ },
+ "methods": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
+ "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=",
+ "dev": true
+ },
+ "micromatch": {
+ "version": "3.1.10",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
+ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
+ "dev": true,
+ "requires": {
+ "arr-diff": "^4.0.0",
+ "array-unique": "^0.3.2",
+ "braces": "^2.3.1",
+ "define-property": "^2.0.2",
+ "extend-shallow": "^3.0.2",
+ "extglob": "^2.0.4",
+ "fragment-cache": "^0.2.1",
+ "kind-of": "^6.0.2",
+ "nanomatch": "^1.2.9",
+ "object.pick": "^1.3.0",
+ "regex-not": "^1.0.0",
+ "snapdragon": "^0.8.1",
+ "to-regex": "^3.0.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
+ "dev": true
+ }
+ }
+ },
+ "miller-rabin": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz",
+ "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==",
+ "dev": true,
+ "requires": {
+ "bn.js": "^4.0.0",
+ "brorand": "^1.0.1"
+ }
+ },
+ "mime": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
+ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
+ "dev": true
+ },
+ "mime-db": {
+ "version": "1.43.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz",
+ "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==",
+ "dev": true
+ },
+ "mime-types": {
+ "version": "2.1.26",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz",
+ "integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==",
+ "dev": true,
+ "requires": {
+ "mime-db": "1.43.0"
+ }
+ },
+ "min-document": {
+ "version": "2.19.0",
+ "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz",
+ "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=",
+ "dev": true,
+ "requires": {
+ "dom-walk": "^0.1.0"
+ }
+ },
+ "minimalistic-assert": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
+ "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==",
+ "dev": true
+ },
+ "minimalistic-crypto-utils": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
+ "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=",
+ "dev": true
+ },
+ "minimatch": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+ "dev": true,
+ "requires": {
+ "brace-expansion": "^1.1.7"
+ }
+ },
+ "minimist": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
+ "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
+ "dev": true
+ },
+ "mixin-deep": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz",
+ "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==",
+ "dev": true,
+ "requires": {
+ "for-in": "^1.0.2",
+ "is-extendable": "^1.0.1"
+ },
+ "dependencies": {
+ "is-extendable": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
+ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
+ "dev": true,
+ "requires": {
+ "is-plain-object": "^2.0.4"
+ }
+ }
+ }
+ },
+ "mkdirp": {
+ "version": "0.5.5",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
+ "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
+ "dev": true,
+ "requires": {
+ "minimist": "^1.2.5"
+ }
+ },
+ "mkdirp-classic": {
+ "version": "0.5.2",
+ "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.2.tgz",
+ "integrity": "sha512-ejdnDQcR75gwknmMw/tx02AuRs8jCtqFoFqDZMjiNxsu85sRIJVXDKHuLYvUUPRBUtV2FpSZa9bL1BUa3BdR2g==",
+ "dev": true
+ },
+ "module-deps": {
+ "version": "3.9.1",
+ "resolved": "https://registry.npmjs.org/module-deps/-/module-deps-3.9.1.tgz",
+ "integrity": "sha1-6nXK+RmQkNJbDVUStaysuW5/h/M=",
+ "dev": true,
+ "requires": {
+ "JSONStream": "^1.0.3",
+ "browser-resolve": "^1.7.0",
+ "concat-stream": "~1.4.5",
+ "defined": "^1.0.0",
+ "detective": "^4.0.0",
+ "duplexer2": "0.0.2",
+ "inherits": "^2.0.1",
+ "parents": "^1.0.0",
+ "readable-stream": "^1.1.13",
+ "resolve": "^1.1.3",
+ "stream-combiner2": "~1.0.0",
+ "subarg": "^1.0.0",
+ "through2": "^1.0.0",
+ "xtend": "^4.0.0"
+ },
+ "dependencies": {
+ "readable-stream": {
+ "version": "1.1.14",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
+ "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
+ "dev": true,
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.1",
+ "isarray": "0.0.1",
+ "string_decoder": "~0.10.x"
+ }
+ }
+ }
+ },
+ "moo": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/moo/-/moo-0.5.1.tgz",
+ "integrity": "sha512-I1mnb5xn4fO80BH9BLcF0yLypy2UKl+Cb01Fu0hJRkJjlCRtxZMWkTdAtDd5ZqCOxtCkhmRwyI57vWT+1iZ67w==",
+ "dev": true
+ },
+ "ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
+ "dev": true
+ },
+ "multipipe": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/multipipe/-/multipipe-0.1.2.tgz",
+ "integrity": "sha1-Ko8t33Du1WTf8tV/HhoTfZ8FB4s=",
+ "dev": true,
+ "requires": {
+ "duplexer2": "0.0.2"
+ }
+ },
+ "mute-stream": {
+ "version": "0.0.4",
+ "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.4.tgz",
+ "integrity": "sha1-qSGZYKbV1dBGWXruUSUsZlX3F34=",
+ "dev": true
+ },
+ "nan": {
+ "version": "2.14.1",
+ "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz",
+ "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==",
+ "dev": true,
+ "optional": true
+ },
+ "nanomatch": {
+ "version": "1.2.13",
+ "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz",
+ "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==",
+ "dev": true,
+ "requires": {
+ "arr-diff": "^4.0.0",
+ "array-unique": "^0.3.2",
+ "define-property": "^2.0.2",
+ "extend-shallow": "^3.0.2",
+ "fragment-cache": "^0.2.1",
+ "is-windows": "^1.0.2",
+ "kind-of": "^6.0.2",
+ "object.pick": "^1.3.0",
+ "regex-not": "^1.0.0",
+ "snapdragon": "^0.8.1",
+ "to-regex": "^3.0.1"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
+ "dev": true
+ }
+ }
+ },
+ "natural-compare": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
+ "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
+ "dev": true
+ },
+ "nearley": {
+ "version": "2.19.2",
+ "resolved": "https://registry.npmjs.org/nearley/-/nearley-2.19.2.tgz",
+ "integrity": "sha512-h6lygT0BWAGErDvoE2LfI+tDeY2+UUrqG5dcBPdCmjnjud9z1wE0P7ljb85iNbE93YA+xJLpoSYGMuUqhnSSSA==",
+ "dev": true,
+ "requires": {
+ "commander": "^2.19.0",
+ "moo": "^0.5.0",
+ "railroad-diagrams": "^1.0.0",
+ "randexp": "0.4.6",
+ "semver": "^5.4.1"
+ },
+ "dependencies": {
+ "semver": {
+ "version": "5.7.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
+ "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
+ "dev": true
+ }
+ }
+ },
+ "negotiator": {
+ "version": "0.6.2",
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz",
+ "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==",
+ "dev": true
+ },
+ "neo-async": {
+ "version": "2.6.1",
+ "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz",
+ "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==",
+ "dev": true
+ },
+ "next-tick": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz",
+ "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=",
+ "dev": true
+ },
+ "node-fetch": {
+ "version": "1.7.3",
+ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz",
+ "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==",
+ "dev": true,
+ "requires": {
+ "encoding": "^0.1.11",
+ "is-stream": "^1.0.1"
+ }
+ },
+ "node-int64": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz",
+ "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=",
+ "dev": true
+ },
+ "node-libs-browser": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-0.7.0.tgz",
+ "integrity": "sha1-PicsCBnjCJNeJmdECNevDhSRuDs=",
+ "dev": true,
+ "requires": {
+ "assert": "^1.1.1",
+ "browserify-zlib": "^0.1.4",
+ "buffer": "^4.9.0",
+ "console-browserify": "^1.1.0",
+ "constants-browserify": "^1.0.0",
+ "crypto-browserify": "3.3.0",
+ "domain-browser": "^1.1.1",
+ "events": "^1.0.0",
+ "https-browserify": "0.0.1",
+ "os-browserify": "^0.2.0",
+ "path-browserify": "0.0.0",
+ "process": "^0.11.0",
+ "punycode": "^1.2.4",
+ "querystring-es3": "^0.2.0",
+ "readable-stream": "^2.0.5",
+ "stream-browserify": "^2.0.1",
+ "stream-http": "^2.3.1",
+ "string_decoder": "^0.10.25",
+ "timers-browserify": "^2.0.2",
+ "tty-browserify": "0.0.0",
+ "url": "^0.11.0",
+ "util": "^0.10.3",
+ "vm-browserify": "0.0.4"
+ },
+ "dependencies": {
+ "base64-js": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz",
+ "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==",
+ "dev": true
+ },
+ "browserify-aes": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-0.4.0.tgz",
+ "integrity": "sha1-BnFJtmjfMcS1hTPgLQHoBthgjiw=",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.1"
+ }
+ },
+ "buffer": {
+ "version": "4.9.2",
+ "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz",
+ "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==",
+ "dev": true,
+ "requires": {
+ "base64-js": "^1.0.2",
+ "ieee754": "^1.1.4",
+ "isarray": "^1.0.0"
+ }
+ },
+ "builtin-status-codes": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz",
+ "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=",
+ "dev": true
+ },
+ "constants-browserify": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz",
+ "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=",
+ "dev": true
+ },
+ "crypto-browserify": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.3.0.tgz",
+ "integrity": "sha1-ufx1u0oO1h3PHNXa6W6zDJw+UGw=",
+ "dev": true,
+ "requires": {
+ "browserify-aes": "0.4.0",
+ "pbkdf2-compat": "2.0.1",
+ "ripemd160": "0.2.0",
+ "sha.js": "2.2.6"
+ }
+ },
+ "isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
+ "dev": true
+ },
+ "os-browserify": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.2.1.tgz",
+ "integrity": "sha1-Y/xMzuXS13Y9Jrv4YBB45sLgBE8=",
+ "dev": true
+ },
+ "path-browserify": {
+ "version": "0.0.0",
+ "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz",
+ "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=",
+ "dev": true
+ },
+ "ripemd160": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-0.2.0.tgz",
+ "integrity": "sha1-K/GYveFnys+lHAqSjoS2i74XH84=",
+ "dev": true
+ },
+ "sha.js": {
+ "version": "2.2.6",
+ "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.2.6.tgz",
+ "integrity": "sha1-F93t3F9yL7ZlAWWIlUYZd4ZzFbo=",
+ "dev": true
+ },
+ "stream-http": {
+ "version": "2.8.3",
+ "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz",
+ "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==",
+ "dev": true,
+ "requires": {
+ "builtin-status-codes": "^3.0.0",
+ "inherits": "^2.0.1",
+ "readable-stream": "^2.3.6",
+ "to-arraybuffer": "^1.0.0",
+ "xtend": "^4.0.0"
+ }
+ },
+ "timers-browserify": {
+ "version": "2.0.11",
+ "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz",
+ "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==",
+ "dev": true,
+ "requires": {
+ "setimmediate": "^1.0.4"
+ }
+ },
+ "tty-browserify": {
+ "version": "0.0.0",
+ "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz",
+ "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=",
+ "dev": true
+ },
+ "url": {
+ "version": "0.11.0",
+ "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz",
+ "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=",
+ "dev": true,
+ "requires": {
+ "punycode": "1.3.2",
+ "querystring": "0.2.0"
+ },
+ "dependencies": {
+ "punycode": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz",
+ "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=",
+ "dev": true
+ }
+ }
+ }
+ }
+ },
+ "node-notifier": {
+ "version": "5.4.3",
+ "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-5.4.3.tgz",
+ "integrity": "sha512-M4UBGcs4jeOK9CjTsYwkvH6/MzuUmGCyTW+kCY7uO+1ZVr0+FHGdPdIf5CCLqAaxnRrWidyoQlNkMIIVwbKB8Q==",
+ "dev": true,
+ "requires": {
+ "growly": "^1.3.0",
+ "is-wsl": "^1.1.0",
+ "semver": "^5.5.0",
+ "shellwords": "^0.1.1",
+ "which": "^1.3.0"
+ },
+ "dependencies": {
+ "semver": {
+ "version": "5.7.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
+ "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
+ "dev": true
+ }
+ }
+ },
+ "normalize-package-data": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
+ "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
+ "dev": true,
+ "requires": {
+ "hosted-git-info": "^2.1.4",
+ "resolve": "^1.10.0",
+ "semver": "2 || 3 || 4 || 5",
+ "validate-npm-package-license": "^3.0.1"
+ }
+ },
+ "normalize-path": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
+ "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
+ "dev": true,
+ "requires": {
+ "remove-trailing-separator": "^1.0.1"
+ }
+ },
+ "normalize-range": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
+ "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=",
+ "dev": true
+ },
+ "normalize-url": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz",
+ "integrity": "sha1-LMDWazHqIwNkWENuNiDYWVTGbDw=",
+ "dev": true,
+ "requires": {
+ "object-assign": "^4.0.1",
+ "prepend-http": "^1.0.0",
+ "query-string": "^4.1.0",
+ "sort-keys": "^1.0.0"
+ }
+ },
+ "num2fraction": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz",
+ "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=",
+ "dev": true
+ },
+ "number-is-nan": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
+ "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=",
+ "dev": true
+ },
+ "nwmatcher": {
+ "version": "1.4.4",
+ "resolved": "https://registry.npmjs.org/nwmatcher/-/nwmatcher-1.4.4.tgz",
+ "integrity": "sha512-3iuY4N5dhgMpCUrOVnuAdGrgxVqV2cJpM+XNccjR2DKOB1RUP0aA+wGXEiNziG/UKboFyGBIoKOaNlJxx8bciQ==",
+ "dev": true
+ },
+ "oauth-sign": {
+ "version": "0.9.0",
+ "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz",
+ "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==",
+ "dev": true
+ },
+ "object-assign": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
+ "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
+ },
+ "object-copy": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz",
+ "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=",
+ "dev": true,
+ "requires": {
+ "copy-descriptor": "^0.1.0",
+ "define-property": "^0.2.5",
+ "kind-of": "^3.0.3"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^0.1.0"
+ }
+ }
+ }
+ },
+ "object-hash": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-1.3.1.tgz",
+ "integrity": "sha512-OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA==",
+ "dev": true
+ },
+ "object-keys": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
+ "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
+ "dev": true
+ },
+ "object-visit": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz",
+ "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=",
+ "dev": true,
+ "requires": {
+ "isobject": "^3.0.0"
+ }
+ },
+ "object.defaults": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz",
+ "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=",
+ "dev": true,
+ "requires": {
+ "array-each": "^1.0.1",
+ "array-slice": "^1.0.0",
+ "for-own": "^1.0.0",
+ "isobject": "^3.0.0"
+ }
+ },
+ "object.map": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz",
+ "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=",
+ "dev": true,
+ "requires": {
+ "for-own": "^1.0.0",
+ "make-iterator": "^1.0.0"
+ }
+ },
+ "object.omit": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz",
+ "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=",
+ "dev": true,
+ "requires": {
+ "for-own": "^0.1.4",
+ "is-extendable": "^0.1.1"
+ },
+ "dependencies": {
+ "for-own": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz",
+ "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=",
+ "dev": true,
+ "requires": {
+ "for-in": "^1.0.1"
+ }
+ }
+ }
+ },
+ "object.pick": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz",
+ "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=",
+ "dev": true,
+ "requires": {
+ "isobject": "^3.0.1"
+ }
+ },
+ "on-finished": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
+ "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=",
+ "dev": true,
+ "requires": {
+ "ee-first": "1.1.1"
+ }
+ },
+ "on-headers": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz",
+ "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==",
+ "dev": true
+ },
+ "once": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
+ "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
+ "dev": true,
+ "requires": {
+ "wrappy": "1"
+ }
+ },
+ "open": {
+ "version": "0.0.5",
+ "resolved": "https://registry.npmjs.org/open/-/open-0.0.5.tgz",
+ "integrity": "sha1-QsPhjslUZra/DcQvOilFw/DK2Pw=",
+ "dev": true
+ },
+ "optimist": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
+ "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=",
+ "dev": true,
+ "requires": {
+ "minimist": "~0.0.1",
+ "wordwrap": "~0.0.2"
+ },
+ "dependencies": {
+ "minimist": {
+ "version": "0.0.10",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
+ "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=",
+ "dev": true
+ }
+ }
+ },
+ "optionator": {
+ "version": "0.5.0",
+ "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.5.0.tgz",
+ "integrity": "sha1-t1qJlaLUF98ltuTjhi9QqohlE2g=",
+ "dev": true,
+ "requires": {
+ "deep-is": "~0.1.2",
+ "fast-levenshtein": "~1.0.0",
+ "levn": "~0.2.5",
+ "prelude-ls": "~1.1.1",
+ "type-check": "~0.3.1",
+ "wordwrap": "~0.0.2"
+ }
+ },
+ "orchestrator": {
+ "version": "0.3.8",
+ "resolved": "https://registry.npmjs.org/orchestrator/-/orchestrator-0.3.8.tgz",
+ "integrity": "sha1-FOfp4nZPcxX7rBhOUGx6pt+UrX4=",
+ "dev": true,
+ "requires": {
+ "end-of-stream": "~0.1.5",
+ "sequencify": "~0.0.7",
+ "stream-consume": "~0.1.0"
+ }
+ },
+ "ordered-read-streams": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-0.1.0.tgz",
+ "integrity": "sha1-/VZamvjrRHO6abbtijQ1LLVS8SY=",
+ "dev": true
+ },
+ "original": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz",
+ "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==",
+ "dev": true,
+ "requires": {
+ "url-parse": "^1.4.3"
+ }
+ },
+ "os-browserify": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.1.2.tgz",
+ "integrity": "sha1-ScoCk+CxlZCl9d4Qx/JlphfY/lQ=",
+ "dev": true
+ },
+ "os-homedir": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
+ "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
+ "dev": true
+ },
+ "os-locale": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz",
+ "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=",
+ "dev": true,
+ "requires": {
+ "lcid": "^1.0.0"
+ }
+ },
+ "os-tmpdir": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
+ "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
+ "dev": true
+ },
+ "outpipe": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/outpipe/-/outpipe-1.1.1.tgz",
+ "integrity": "sha1-UM+GFjZeh+Ax4ppeyTOaPaRyX6I=",
+ "dev": true,
+ "requires": {
+ "shell-quote": "^1.4.2"
+ },
+ "dependencies": {
+ "shell-quote": {
+ "version": "1.7.2",
+ "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz",
+ "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==",
+ "dev": true
+ }
+ }
+ },
+ "output-file-sync": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/output-file-sync/-/output-file-sync-1.1.2.tgz",
+ "integrity": "sha1-0KM+7+YaIF+suQCS6CZZjVJFznY=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.4",
+ "mkdirp": "^0.5.1",
+ "object-assign": "^4.1.0"
+ }
+ },
+ "p-limit": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
+ "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
+ "dev": true,
+ "requires": {
+ "p-try": "^1.0.0"
+ }
+ },
+ "p-locate": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
+ "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
+ "dev": true,
+ "requires": {
+ "p-limit": "^1.1.0"
+ }
+ },
+ "p-try": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
+ "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
+ "dev": true
+ },
+ "pako": {
+ "version": "0.2.9",
+ "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz",
+ "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=",
+ "dev": true
+ },
+ "parents": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/parents/-/parents-1.0.1.tgz",
+ "integrity": "sha1-/t1NK/GTp3dF/nHjcdc8MwfZx1E=",
+ "dev": true,
+ "requires": {
+ "path-platform": "~0.11.15"
+ }
+ },
+ "parse-asn1": {
+ "version": "5.1.5",
+ "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz",
+ "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==",
+ "dev": true,
+ "requires": {
+ "asn1.js": "^4.0.0",
+ "browserify-aes": "^1.0.0",
+ "create-hash": "^1.1.0",
+ "evp_bytestokey": "^1.0.0",
+ "pbkdf2": "^3.0.3",
+ "safe-buffer": "^5.1.1"
+ }
+ },
+ "parse-filepath": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz",
+ "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=",
+ "dev": true,
+ "requires": {
+ "is-absolute": "^1.0.0",
+ "map-cache": "^0.2.0",
+ "path-root": "^0.1.1"
+ }
+ },
+ "parse-glob": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz",
+ "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=",
+ "dev": true,
+ "requires": {
+ "glob-base": "^0.3.0",
+ "is-dotfile": "^1.0.0",
+ "is-extglob": "^1.0.0",
+ "is-glob": "^2.0.0"
+ },
+ "dependencies": {
+ "is-extglob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
+ "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=",
+ "dev": true
+ },
+ "is-glob": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
+ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^1.0.0"
+ }
+ }
+ }
+ },
+ "parse-import": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/parse-import/-/parse-import-2.0.0.tgz",
+ "integrity": "sha1-KyR0Aw4AirmNt2xLy/TbWucwb18=",
+ "dev": true,
+ "requires": {
+ "get-imports": "^1.0.0"
+ }
+ },
+ "parse-json": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
+ "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
+ "dev": true,
+ "requires": {
+ "error-ex": "^1.2.0"
+ }
+ },
+ "parse-node-version": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz",
+ "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==",
+ "dev": true
+ },
+ "parse-passwd": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz",
+ "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=",
+ "dev": true
+ },
+ "parse5": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/parse5/-/parse5-1.5.1.tgz",
+ "integrity": "sha1-m387DeMr543CQBsXVzzK8Pb1nZQ=",
+ "dev": true
+ },
+ "parseurl": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
+ "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
+ "dev": true
+ },
+ "pascalcase": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz",
+ "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=",
+ "dev": true
+ },
+ "path-browserify": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz",
+ "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==",
+ "dev": true
+ },
+ "path-dirname": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz",
+ "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=",
+ "dev": true
+ },
+ "path-exists": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
+ "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
+ "dev": true,
+ "requires": {
+ "pinkie-promise": "^2.0.0"
+ }
+ },
+ "path-is-absolute": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
+ "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
+ "dev": true
+ },
+ "path-is-inside": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz",
+ "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=",
+ "dev": true
+ },
+ "path-parse": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
+ "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==",
+ "dev": true
+ },
+ "path-platform": {
+ "version": "0.11.15",
+ "resolved": "https://registry.npmjs.org/path-platform/-/path-platform-0.11.15.tgz",
+ "integrity": "sha1-6GQhf3TDaFDwhSt43Hv31KVyG/I=",
+ "dev": true
+ },
+ "path-root": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz",
+ "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=",
+ "dev": true,
+ "requires": {
+ "path-root-regex": "^0.1.0"
+ }
+ },
+ "path-root-regex": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz",
+ "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=",
+ "dev": true
+ },
+ "path-to-regexp": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
+ "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=",
+ "dev": true
+ },
+ "path-type": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
+ "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.2",
+ "pify": "^2.0.0",
+ "pinkie-promise": "^2.0.0"
+ }
+ },
+ "pbkdf2": {
+ "version": "3.0.17",
+ "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz",
+ "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==",
+ "dev": true,
+ "requires": {
+ "create-hash": "^1.1.2",
+ "create-hmac": "^1.1.4",
+ "ripemd160": "^2.0.1",
+ "safe-buffer": "^5.0.1",
+ "sha.js": "^2.4.8"
+ }
+ },
+ "pbkdf2-compat": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/pbkdf2-compat/-/pbkdf2-compat-2.0.1.tgz",
+ "integrity": "sha1-tuDI+plJTZTgURV1gCpZpcFC8og=",
+ "dev": true
+ },
+ "performance-now": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
+ "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=",
+ "dev": true
+ },
+ "pify": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
+ "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
+ "dev": true
+ },
+ "pinkie": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
+ "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=",
+ "dev": true
+ },
+ "pinkie-promise": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
+ "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
+ "dev": true,
+ "requires": {
+ "pinkie": "^2.0.0"
+ }
+ },
+ "pkg-dir": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz",
+ "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=",
+ "dev": true,
+ "requires": {
+ "find-up": "^1.0.0"
+ }
+ },
+ "plugin-error": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz",
+ "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==",
+ "dev": true,
+ "requires": {
+ "ansi-colors": "^1.0.1",
+ "arr-diff": "^4.0.0",
+ "arr-union": "^3.1.0",
+ "extend-shallow": "^3.0.2"
+ }
+ },
+ "posix-character-classes": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz",
+ "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=",
+ "dev": true
+ },
+ "postcss": {
+ "version": "5.2.18",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz",
+ "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==",
+ "dev": true,
+ "requires": {
+ "chalk": "^1.1.3",
+ "js-base64": "^2.1.9",
+ "source-map": "^0.5.6",
+ "supports-color": "^3.2.3"
+ },
+ "dependencies": {
+ "supports-color": {
+ "version": "3.2.3",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz",
+ "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=",
+ "dev": true,
+ "requires": {
+ "has-flag": "^1.0.0"
+ }
+ }
+ }
+ },
+ "postcss-calc": {
+ "version": "5.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-5.3.1.tgz",
+ "integrity": "sha1-d7rnypKK2FcW4v2kLyYb98HWW14=",
+ "dev": true,
+ "requires": {
+ "postcss": "^5.0.2",
+ "postcss-message-helpers": "^2.0.0",
+ "reduce-css-calc": "^1.2.6"
+ }
+ },
+ "postcss-colormin": {
+ "version": "2.2.2",
+ "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-2.2.2.tgz",
+ "integrity": "sha1-ZjFBfV8OkJo9fsJrJMio0eT5bks=",
+ "dev": true,
+ "requires": {
+ "colormin": "^1.0.5",
+ "postcss": "^5.0.13",
+ "postcss-value-parser": "^3.2.3"
+ }
+ },
+ "postcss-convert-values": {
+ "version": "2.6.1",
+ "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-2.6.1.tgz",
+ "integrity": "sha1-u9hZPFwf0uPRwyK7kl3K6Nrk1i0=",
+ "dev": true,
+ "requires": {
+ "postcss": "^5.0.11",
+ "postcss-value-parser": "^3.1.2"
+ }
+ },
+ "postcss-discard-comments": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-2.0.4.tgz",
+ "integrity": "sha1-vv6J+v1bPazlzM5Rt2uBUUvgDj0=",
+ "dev": true,
+ "requires": {
+ "postcss": "^5.0.14"
+ }
+ },
+ "postcss-discard-duplicates": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-2.1.0.tgz",
+ "integrity": "sha1-uavye4isGIFYpesSq8riAmO5GTI=",
+ "dev": true,
+ "requires": {
+ "postcss": "^5.0.4"
+ }
+ },
+ "postcss-discard-empty": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-2.1.0.tgz",
+ "integrity": "sha1-0rS9nVztXr2Nyt52QMfXzX9PkrU=",
+ "dev": true,
+ "requires": {
+ "postcss": "^5.0.14"
+ }
+ },
+ "postcss-discard-overridden": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-0.1.1.tgz",
+ "integrity": "sha1-ix6vVU9ob7KIzYdMVWZ7CqNmjVg=",
+ "dev": true,
+ "requires": {
+ "postcss": "^5.0.16"
+ }
+ },
+ "postcss-discard-unused": {
+ "version": "2.2.3",
+ "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-2.2.3.tgz",
+ "integrity": "sha1-vOMLLMWR/8Y0Mitfs0ZLbZNPRDM=",
+ "dev": true,
+ "requires": {
+ "postcss": "^5.0.14",
+ "uniqs": "^2.0.0"
+ }
+ },
+ "postcss-filter-plugins": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/postcss-filter-plugins/-/postcss-filter-plugins-2.0.3.tgz",
+ "integrity": "sha512-T53GVFsdinJhgwm7rg1BzbeBRomOg9y5MBVhGcsV0CxurUdVj1UlPdKtn7aqYA/c/QVkzKMjq2bSV5dKG5+AwQ==",
+ "dev": true,
+ "requires": {
+ "postcss": "^5.0.4"
+ }
+ },
+ "postcss-merge-idents": {
+ "version": "2.1.7",
+ "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-2.1.7.tgz",
+ "integrity": "sha1-TFUwMTwI4dWzu/PSu8dH4njuonA=",
+ "dev": true,
+ "requires": {
+ "has": "^1.0.1",
+ "postcss": "^5.0.10",
+ "postcss-value-parser": "^3.1.1"
+ }
+ },
+ "postcss-merge-longhand": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-2.0.2.tgz",
+ "integrity": "sha1-I9kM0Sewp3mUkVMyc5A0oaTz1lg=",
+ "dev": true,
+ "requires": {
+ "postcss": "^5.0.4"
+ }
+ },
+ "postcss-merge-rules": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-2.1.2.tgz",
+ "integrity": "sha1-0d9d+qexrMO+VT8OnhDofGG19yE=",
+ "dev": true,
+ "requires": {
+ "browserslist": "^1.5.2",
+ "caniuse-api": "^1.5.2",
+ "postcss": "^5.0.4",
+ "postcss-selector-parser": "^2.2.2",
+ "vendors": "^1.0.0"
+ }
+ },
+ "postcss-message-helpers": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/postcss-message-helpers/-/postcss-message-helpers-2.0.0.tgz",
+ "integrity": "sha1-pPL0+rbk/gAvCu0ABHjN9S+bpg4=",
+ "dev": true
+ },
+ "postcss-minify-font-values": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-1.0.5.tgz",
+ "integrity": "sha1-S1jttWZB66fIR0qzUmyv17vey2k=",
+ "dev": true,
+ "requires": {
+ "object-assign": "^4.0.1",
+ "postcss": "^5.0.4",
+ "postcss-value-parser": "^3.0.2"
+ }
+ },
+ "postcss-minify-gradients": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-1.0.5.tgz",
+ "integrity": "sha1-Xb2hE3NwP4PPtKPqOIHY11/15uE=",
+ "dev": true,
+ "requires": {
+ "postcss": "^5.0.12",
+ "postcss-value-parser": "^3.3.0"
+ }
+ },
+ "postcss-minify-params": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-1.2.2.tgz",
+ "integrity": "sha1-rSzgcTc7lDs9kwo/pZo1jCjW8fM=",
+ "dev": true,
+ "requires": {
+ "alphanum-sort": "^1.0.1",
+ "postcss": "^5.0.2",
+ "postcss-value-parser": "^3.0.2",
+ "uniqs": "^2.0.0"
+ }
+ },
+ "postcss-minify-selectors": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-2.1.1.tgz",
+ "integrity": "sha1-ssapjAByz5G5MtGkllCBFDEXNb8=",
+ "dev": true,
+ "requires": {
+ "alphanum-sort": "^1.0.2",
+ "has": "^1.0.1",
+ "postcss": "^5.0.14",
+ "postcss-selector-parser": "^2.0.0"
+ }
+ },
+ "postcss-modules-extract-imports": {
+ "version": "1.0.0-beta2",
+ "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.0.0-beta2.tgz",
+ "integrity": "sha1-8dNTPuo/553/qXojccyRY5NAHcU=",
+ "dev": true,
+ "requires": {
+ "postcss": "^5.0.4"
+ }
+ },
+ "postcss-modules-local-by-default": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz",
+ "integrity": "sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk=",
+ "dev": true,
+ "requires": {
+ "css-selector-tokenizer": "^0.7.0",
+ "postcss": "^6.0.1"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
+ "dev": true,
+ "requires": {
+ "color-convert": "^1.9.0"
+ }
+ },
+ "chalk": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^3.2.1",
+ "escape-string-regexp": "^1.0.5",
+ "supports-color": "^5.3.0"
+ }
+ },
+ "css-selector-tokenizer": {
+ "version": "0.7.2",
+ "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.2.tgz",
+ "integrity": "sha512-yj856NGuAymN6r8bn8/Jl46pR+OC3eEvAhfGYDUe7YPtTPAYrSSw4oAniZ9Y8T5B92hjhwTBLUen0/vKPxf6pw==",
+ "dev": true,
+ "requires": {
+ "cssesc": "^3.0.0",
+ "fastparse": "^1.1.2",
+ "regexpu-core": "^4.6.0"
+ }
+ },
+ "cssesc": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
+ "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
+ "dev": true
+ },
+ "has-flag": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
+ "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
+ "dev": true
+ },
+ "jsesc": {
+ "version": "0.5.0",
+ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
+ "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=",
+ "dev": true
+ },
+ "postcss": {
+ "version": "6.0.23",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
+ "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
+ "dev": true,
+ "requires": {
+ "chalk": "^2.4.1",
+ "source-map": "^0.6.1",
+ "supports-color": "^5.4.0"
+ }
+ },
+ "regexpu-core": {
+ "version": "4.7.0",
+ "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.0.tgz",
+ "integrity": "sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ==",
+ "dev": true,
+ "requires": {
+ "regenerate": "^1.4.0",
+ "regenerate-unicode-properties": "^8.2.0",
+ "regjsgen": "^0.5.1",
+ "regjsparser": "^0.6.4",
+ "unicode-match-property-ecmascript": "^1.0.4",
+ "unicode-match-property-value-ecmascript": "^1.2.0"
+ }
+ },
+ "regjsgen": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz",
+ "integrity": "sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg==",
+ "dev": true
+ },
+ "regjsparser": {
+ "version": "0.6.4",
+ "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz",
+ "integrity": "sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==",
+ "dev": true,
+ "requires": {
+ "jsesc": "~0.5.0"
+ }
+ },
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true
+ },
+ "supports-color": {
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^3.0.0"
+ }
+ }
+ }
+ },
+ "postcss-modules-scope": {
+ "version": "1.0.0-beta2",
+ "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-1.0.0-beta2.tgz",
+ "integrity": "sha1-dq+LAAjt5ka7nbZ14nvE7jqgRLw=",
+ "dev": true,
+ "requires": {
+ "css-selector-tokenizer": "^0.5.0",
+ "postcss": "^5.0.4"
+ }
+ },
+ "postcss-modules-values": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz",
+ "integrity": "sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA=",
+ "dev": true,
+ "requires": {
+ "icss-replace-symbols": "^1.1.0",
+ "postcss": "^6.0.1"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
+ "dev": true,
+ "requires": {
+ "color-convert": "^1.9.0"
+ }
+ },
+ "chalk": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^3.2.1",
+ "escape-string-regexp": "^1.0.5",
+ "supports-color": "^5.3.0"
+ }
+ },
+ "has-flag": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
+ "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
+ "dev": true
+ },
+ "postcss": {
+ "version": "6.0.23",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
+ "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
+ "dev": true,
+ "requires": {
+ "chalk": "^2.4.1",
+ "source-map": "^0.6.1",
+ "supports-color": "^5.4.0"
+ }
+ },
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true
+ },
+ "supports-color": {
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^3.0.0"
+ }
+ }
+ }
+ },
+ "postcss-normalize-charset": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-1.1.1.tgz",
+ "integrity": "sha1-757nEhLX/nWceO0WL2HtYrXLk/E=",
+ "dev": true,
+ "requires": {
+ "postcss": "^5.0.5"
+ }
+ },
+ "postcss-normalize-url": {
+ "version": "3.0.8",
+ "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-3.0.8.tgz",
+ "integrity": "sha1-EI90s/L82viRov+j6kWSJ5/HgiI=",
+ "dev": true,
+ "requires": {
+ "is-absolute-url": "^2.0.0",
+ "normalize-url": "^1.4.0",
+ "postcss": "^5.0.14",
+ "postcss-value-parser": "^3.2.3"
+ }
+ },
+ "postcss-ordered-values": {
+ "version": "2.2.3",
+ "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-2.2.3.tgz",
+ "integrity": "sha1-7sbCpntsQSqNsgQud/6NpD+VwR0=",
+ "dev": true,
+ "requires": {
+ "postcss": "^5.0.4",
+ "postcss-value-parser": "^3.0.1"
+ }
+ },
+ "postcss-reduce-idents": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-2.4.0.tgz",
+ "integrity": "sha1-wsbSDMlYKE9qv75j92Cb9AkFmtM=",
+ "dev": true,
+ "requires": {
+ "postcss": "^5.0.4",
+ "postcss-value-parser": "^3.0.2"
+ }
+ },
+ "postcss-reduce-initial": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-1.0.1.tgz",
+ "integrity": "sha1-aPgGlfBF0IJjqHmtJA343WT2ROo=",
+ "dev": true,
+ "requires": {
+ "postcss": "^5.0.4"
+ }
+ },
+ "postcss-reduce-transforms": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-1.0.4.tgz",
+ "integrity": "sha1-/3b02CEkN7McKYpC0uFEQCV3GuE=",
+ "dev": true,
+ "requires": {
+ "has": "^1.0.1",
+ "postcss": "^5.0.8",
+ "postcss-value-parser": "^3.0.1"
+ }
+ },
+ "postcss-selector-parser": {
+ "version": "2.2.3",
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz",
+ "integrity": "sha1-+UN3iGBsPJrO4W/+jYsWKX8nu5A=",
+ "dev": true,
+ "requires": {
+ "flatten": "^1.0.2",
+ "indexes-of": "^1.0.1",
+ "uniq": "^1.0.1"
+ }
+ },
+ "postcss-svgo": {
+ "version": "2.1.6",
+ "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-2.1.6.tgz",
+ "integrity": "sha1-tt8YqmE7Zm4TPwittSGcJoSsEI0=",
+ "dev": true,
+ "requires": {
+ "is-svg": "^2.0.0",
+ "postcss": "^5.0.14",
+ "postcss-value-parser": "^3.2.3",
+ "svgo": "^0.7.0"
+ }
+ },
+ "postcss-unique-selectors": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-2.0.2.tgz",
+ "integrity": "sha1-mB1X0p3csz57Hf4f1DuGSfkzyh0=",
+ "dev": true,
+ "requires": {
+ "alphanum-sort": "^1.0.1",
+ "postcss": "^5.0.4",
+ "uniqs": "^2.0.0"
+ }
+ },
+ "postcss-value-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
+ "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
+ "dev": true
+ },
+ "postcss-zindex": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-2.2.0.tgz",
+ "integrity": "sha1-0hCd3AVbka9n/EyzsCWUZjnSryI=",
+ "dev": true,
+ "requires": {
+ "has": "^1.0.1",
+ "postcss": "^5.0.4",
+ "uniqs": "^2.0.0"
+ }
+ },
+ "prelude-ls": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
+ "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
+ "dev": true
+ },
+ "prepend-http": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz",
+ "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=",
+ "dev": true
+ },
+ "preserve": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz",
+ "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=",
+ "dev": true
+ },
+ "pretty-format": {
+ "version": "19.0.0",
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-19.0.0.tgz",
+ "integrity": "sha1-VlMNMqy5ij+khRxOK503tCBoTIQ=",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^3.0.0"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
+ "dev": true,
+ "requires": {
+ "color-convert": "^1.9.0"
+ }
+ }
+ }
+ },
+ "pretty-hrtime": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz",
+ "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=",
+ "dev": true
+ },
+ "private": {
+ "version": "0.1.8",
+ "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz",
+ "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==",
+ "dev": true
+ },
+ "process": {
+ "version": "0.11.10",
+ "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
+ "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=",
+ "dev": true
+ },
+ "process-nextick-args": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
+ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
+ "dev": true
+ },
+ "promise": {
+ "version": "7.3.1",
+ "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz",
+ "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==",
+ "dev": true,
+ "requires": {
+ "asap": "~2.0.3"
+ }
+ },
+ "prop-types": {
+ "version": "15.7.2",
+ "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz",
+ "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==",
+ "requires": {
+ "loose-envify": "^1.4.0",
+ "object-assign": "^4.1.1",
+ "react-is": "^16.8.1"
+ }
+ },
+ "prop-types-extra": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/prop-types-extra/-/prop-types-extra-1.1.1.tgz",
+ "integrity": "sha512-59+AHNnHYCdiC+vMwY52WmvP5dM3QLeoumYuEyceQDi9aEhtwN9zIQ2ZNo25sMyXnbh32h+P1ezDsUpUH3JAew==",
+ "dev": true,
+ "requires": {
+ "react-is": "^16.3.2",
+ "warning": "^4.0.0"
+ }
+ },
+ "proxy-addr": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz",
+ "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==",
+ "dev": true,
+ "requires": {
+ "forwarded": "~0.1.2",
+ "ipaddr.js": "1.9.1"
+ }
+ },
+ "prr": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz",
+ "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=",
+ "dev": true
+ },
+ "psl": {
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz",
+ "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==",
+ "dev": true
+ },
+ "public-encrypt": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz",
+ "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==",
+ "dev": true,
+ "requires": {
+ "bn.js": "^4.1.0",
+ "browserify-rsa": "^4.0.0",
+ "create-hash": "^1.1.0",
+ "parse-asn1": "^5.0.0",
+ "randombytes": "^2.0.1",
+ "safe-buffer": "^5.1.2"
+ }
+ },
+ "punycode": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
+ "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
+ "dev": true
+ },
+ "q": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz",
+ "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=",
+ "dev": true
+ },
+ "qs": {
+ "version": "6.5.2",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz",
+ "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==",
+ "dev": true
+ },
+ "query-string": {
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz",
+ "integrity": "sha1-u7aTucqRXCMlFbIosaArYJBD2+s=",
+ "dev": true,
+ "requires": {
+ "object-assign": "^4.1.0",
+ "strict-uri-encode": "^1.0.0"
+ }
+ },
+ "querystring": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz",
+ "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=",
+ "dev": true
+ },
+ "querystring-es3": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz",
+ "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=",
+ "dev": true
+ },
+ "querystringify": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.1.1.tgz",
+ "integrity": "sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA==",
+ "dev": true
+ },
+ "railroad-diagrams": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz",
+ "integrity": "sha1-635iZ1SN3t+4mcG5Dlc3RVnN234=",
+ "dev": true
+ },
+ "randexp": {
+ "version": "0.4.6",
+ "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.4.6.tgz",
+ "integrity": "sha512-80WNmd9DA0tmZrw9qQa62GPPWfuXJknrmVmLcxvq4uZBdYqb1wYoKTmnlGUchvVWe0XiLupYkBoXVOxz3C8DYQ==",
+ "dev": true,
+ "requires": {
+ "discontinuous-range": "1.0.0",
+ "ret": "~0.1.10"
+ }
+ },
+ "randomatic": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz",
+ "integrity": "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==",
+ "dev": true,
+ "requires": {
+ "is-number": "^4.0.0",
+ "kind-of": "^6.0.0",
+ "math-random": "^1.0.1"
+ },
+ "dependencies": {
+ "is-number": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz",
+ "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==",
+ "dev": true
+ },
+ "kind-of": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
+ "dev": true
+ }
+ }
+ },
+ "randombytes": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
+ "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
+ "dev": true,
+ "requires": {
+ "safe-buffer": "^5.1.0"
+ }
+ },
+ "randomfill": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz",
+ "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==",
+ "dev": true,
+ "requires": {
+ "randombytes": "^2.0.5",
+ "safe-buffer": "^5.1.0"
+ }
+ },
+ "range-parser": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
+ "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==",
+ "dev": true
+ },
+ "raw-body": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz",
+ "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==",
+ "dev": true,
+ "requires": {
+ "bytes": "3.1.0",
+ "http-errors": "1.7.2",
+ "iconv-lite": "0.4.24",
+ "unpipe": "1.0.0"
+ },
+ "dependencies": {
+ "bytes": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz",
+ "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==",
+ "dev": true
+ }
+ }
+ },
+ "react": {
+ "version": "16.0.0",
+ "resolved": "https://registry.npmjs.org/react/-/react-16.0.0.tgz",
+ "integrity": "sha1-zn348ZQbA28Cssyp29DLHw6FXi0=",
+ "dev": true,
+ "requires": {
+ "fbjs": "^0.8.16",
+ "loose-envify": "^1.1.0",
+ "object-assign": "^4.1.1",
+ "prop-types": "^15.6.0"
+ }
+ },
+ "react-bootstrap": {
+ "version": "0.31.3",
+ "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-0.31.3.tgz",
+ "integrity": "sha512-n6OcS2IsxLcv1qmma14zKYBJqCsIS4ccwEtl09PLjbYTkKBLwkBmD7hB9+WQUgGfD21TP2UoEI87kIxjVwkP5Q==",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.11.6",
+ "classnames": "^2.2.5",
+ "dom-helpers": "^3.2.0",
+ "invariant": "^2.2.1",
+ "keycode": "^2.1.2",
+ "prop-types": "^15.5.10",
+ "prop-types-extra": "^1.0.1",
+ "react-overlays": "^0.7.0",
+ "react-prop-types": "^0.4.0",
+ "uncontrollable": "^4.1.0",
+ "warning": "^3.0.0"
+ },
+ "dependencies": {
+ "warning": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz",
+ "integrity": "sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=",
+ "dev": true,
+ "requires": {
+ "loose-envify": "^1.0.0"
+ }
+ }
+ }
+ },
+ "react-deep-force-update": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/react-deep-force-update/-/react-deep-force-update-2.1.3.tgz",
+ "integrity": "sha512-lqD4eHKVuB65RyO/hGbEST53E2/GPbcIPcFYyeW/p4vNngtH4G7jnKGlU6u1OqrFo0uNfIvwuBOg98IbLHlNEA==",
+ "dev": true
+ },
+ "react-dom": {
+ "version": "16.0.0",
+ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.0.0.tgz",
+ "integrity": "sha1-nMMHnD3NcNTG4BuEqrKn40wwP1g=",
+ "dev": true,
+ "requires": {
+ "fbjs": "^0.8.16",
+ "loose-envify": "^1.1.0",
+ "object-assign": "^4.1.1",
+ "prop-types": "^15.6.0"
+ }
+ },
+ "react-hot-loader": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/react-hot-loader/-/react-hot-loader-3.1.3.tgz",
+ "integrity": "sha512-d7nZf78irxoGN5PY4zd6CSgZiroOhvIWzRast3qwTn4sSnBwlt08kV8WMQ9mitmxEdlCTwZt+5ClrRSjxWguMQ==",
+ "dev": true,
+ "requires": {
+ "global": "^4.3.0",
+ "react-deep-force-update": "^2.1.1",
+ "react-proxy": "^3.0.0-alpha.0",
+ "redbox-react": "^1.3.6",
+ "source-map": "^0.6.1"
+ },
+ "dependencies": {
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true
+ }
+ }
+ },
+ "react-is": {
+ "version": "16.13.1",
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
+ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
+ },
+ "react-lifecycles-compat": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz",
+ "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA=="
+ },
+ "react-modal": {
+ "version": "3.11.2",
+ "resolved": "https://registry.npmjs.org/react-modal/-/react-modal-3.11.2.tgz",
+ "integrity": "sha512-o8gvvCOFaG1T7W6JUvsYjRjMVToLZgLIsi5kdhFIQCtHxDkA47LznX62j+l6YQkpXDbvQegsDyxe/+JJsFQN7w==",
+ "requires": {
+ "exenv": "^1.2.0",
+ "prop-types": "^15.5.10",
+ "react-lifecycles-compat": "^3.0.0",
+ "warning": "^4.0.3"
+ }
+ },
+ "react-overlays": {
+ "version": "0.7.4",
+ "resolved": "https://registry.npmjs.org/react-overlays/-/react-overlays-0.7.4.tgz",
+ "integrity": "sha512-7vsooMx3siLAuEfTs8FYeP/lAORWWFXTO8PON3KgX0Htq1Oa+po6ioSjGyO0/GO5CVSMNhpWt6V2opeexHgBuQ==",
+ "dev": true,
+ "requires": {
+ "classnames": "^2.2.5",
+ "dom-helpers": "^3.2.1",
+ "prop-types": "^15.5.10",
+ "prop-types-extra": "^1.0.1",
+ "warning": "^3.0.0"
+ },
+ "dependencies": {
+ "warning": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz",
+ "integrity": "sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=",
+ "dev": true,
+ "requires": {
+ "loose-envify": "^1.0.0"
+ }
+ }
+ }
+ },
+ "react-prop-types": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/react-prop-types/-/react-prop-types-0.4.0.tgz",
+ "integrity": "sha1-+ZsL+0AGkpya8gUefBQUpcdbk9A=",
+ "dev": true,
+ "requires": {
+ "warning": "^3.0.0"
+ },
+ "dependencies": {
+ "warning": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz",
+ "integrity": "sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=",
+ "dev": true,
+ "requires": {
+ "loose-envify": "^1.0.0"
+ }
+ }
+ }
+ },
+ "react-proxy": {
+ "version": "3.0.0-alpha.1",
+ "resolved": "https://registry.npmjs.org/react-proxy/-/react-proxy-3.0.0-alpha.1.tgz",
+ "integrity": "sha1-RABCa8+oDKpnJMd1VpUxUgn6Swc=",
+ "dev": true,
+ "requires": {
+ "lodash": "^4.6.1"
+ }
+ },
+ "react-router": {
+ "version": "3.2.6",
+ "resolved": "https://registry.npmjs.org/react-router/-/react-router-3.2.6.tgz",
+ "integrity": "sha512-nlxtQE8B22hb/JxdaslI1tfZacxFU8x8BJryXOnR2RxB4vc01zuHYAHAIgmBkdk1kzXaA25hZxK6KAH/+CXArw==",
+ "dev": true,
+ "requires": {
+ "create-react-class": "^15.5.1",
+ "history": "^3.0.0",
+ "hoist-non-react-statics": "^3.3.2",
+ "invariant": "^2.2.1",
+ "loose-envify": "^1.2.0",
+ "prop-types": "^15.7.2",
+ "react-is": "^16.13.0",
+ "warning": "^3.0.0"
+ },
+ "dependencies": {
+ "warning": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz",
+ "integrity": "sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=",
+ "dev": true,
+ "requires": {
+ "loose-envify": "^1.0.0"
+ }
+ }
+ }
+ },
+ "react-s-alert": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/react-s-alert/-/react-s-alert-1.4.1.tgz",
+ "integrity": "sha512-+cSpVPe6YeGklhlo7zbVlB0Z6jdiU9HPmEVzp5nIhNm9lvdL7rVO2Jx09pCwT99GmODyoN0iNhbQku6r7six8A==",
+ "requires": {
+ "babel-runtime": "^6.23.0"
+ }
+ },
+ "read-only-stream": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/read-only-stream/-/read-only-stream-1.1.1.tgz",
+ "integrity": "sha1-Xad8eZ7ROI0++IoYRxu1kk+KC6E=",
+ "dev": true,
+ "requires": {
+ "readable-stream": "^1.0.31",
+ "readable-wrap": "^1.0.0"
+ },
+ "dependencies": {
+ "readable-stream": {
+ "version": "1.1.14",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
+ "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
+ "dev": true,
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.1",
+ "isarray": "0.0.1",
+ "string_decoder": "~0.10.x"
+ }
+ }
+ }
+ },
+ "read-pkg": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
+ "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
+ "dev": true,
+ "requires": {
+ "load-json-file": "^1.0.0",
+ "normalize-package-data": "^2.3.2",
+ "path-type": "^1.0.0"
+ }
+ },
+ "read-pkg-up": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz",
+ "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=",
+ "dev": true,
+ "requires": {
+ "find-up": "^1.0.0",
+ "read-pkg": "^1.0.0"
+ }
+ },
+ "readable-stream": {
+ "version": "2.3.7",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
+ "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
+ "dev": true,
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.3",
+ "isarray": "~1.0.0",
+ "process-nextick-args": "~2.0.0",
+ "safe-buffer": "~5.1.1",
+ "string_decoder": "~1.1.1",
+ "util-deprecate": "~1.0.1"
+ },
+ "dependencies": {
+ "isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
+ "dev": true
+ },
+ "string_decoder": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+ "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+ "dev": true,
+ "requires": {
+ "safe-buffer": "~5.1.0"
+ }
+ }
+ }
+ },
+ "readable-wrap": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/readable-wrap/-/readable-wrap-1.0.0.tgz",
+ "integrity": "sha1-O1ohHGMeEjA6VJkcgGwX564ga/8=",
+ "dev": true,
+ "requires": {
+ "readable-stream": "^1.1.13-1"
+ },
+ "dependencies": {
+ "readable-stream": {
+ "version": "1.1.14",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
+ "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
+ "dev": true,
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.1",
+ "isarray": "0.0.1",
+ "string_decoder": "~0.10.x"
+ }
+ }
+ }
+ },
+ "readdirp": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz",
+ "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.11",
+ "micromatch": "^3.1.10",
+ "readable-stream": "^2.0.2"
+ }
+ },
+ "readline2": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/readline2/-/readline2-0.1.1.tgz",
+ "integrity": "sha1-mUQ7pug7gw7zBRv9fcJBqCco1Wg=",
+ "dev": true,
+ "requires": {
+ "mute-stream": "0.0.4",
+ "strip-ansi": "^2.0.1"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz",
+ "integrity": "sha1-QchHGUZGN15qGl0Qw8oFTvn8mA0=",
+ "dev": true
+ },
+ "strip-ansi": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-2.0.1.tgz",
+ "integrity": "sha1-32LBqpTtLxFOHQ8h/R1QSCt5pg4=",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^1.0.0"
+ }
+ }
+ }
+ },
+ "recast": {
+ "version": "0.10.33",
+ "resolved": "https://registry.npmjs.org/recast/-/recast-0.10.33.tgz",
+ "integrity": "sha1-lCgI96oBbx+nFCxGHX5XBKqo1pc=",
+ "dev": true,
+ "requires": {
+ "ast-types": "0.8.12",
+ "esprima-fb": "~15001.1001.0-dev-harmony-fb",
+ "private": "~0.1.5",
+ "source-map": "~0.5.0"
+ },
+ "dependencies": {
+ "ast-types": {
+ "version": "0.8.12",
+ "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.8.12.tgz",
+ "integrity": "sha1-oNkOQ1G7iHcWyD/WN+v4GK9K38w=",
+ "dev": true
+ }
+ }
+ },
+ "rechoir": {
+ "version": "0.6.2",
+ "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz",
+ "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=",
+ "dev": true,
+ "requires": {
+ "resolve": "^1.1.6"
+ }
+ },
+ "redbox-react": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/redbox-react/-/redbox-react-1.6.0.tgz",
+ "integrity": "sha512-mLjM5eYR41yOp5YKHpd3syFeGq6B4Wj5vZr64nbLvTZW5ZLff4LYk7VE4ITpVxkZpCY6OZuqh0HiP3A3uEaCpg==",
+ "dev": true,
+ "requires": {
+ "error-stack-parser": "^1.3.6",
+ "object-assign": "^4.0.1",
+ "prop-types": "^15.5.4",
+ "sourcemapped-stacktrace": "^1.1.6"
+ }
+ },
+ "redent": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
+ "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
+ "dev": true,
+ "requires": {
+ "indent-string": "^2.1.0",
+ "strip-indent": "^1.0.1"
+ }
+ },
+ "reduce-css-calc": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz",
+ "integrity": "sha1-dHyRTgSWFKTJz7umKYca0dKSdxY=",
+ "dev": true,
+ "requires": {
+ "balanced-match": "^0.4.2",
+ "math-expression-evaluator": "^1.2.14",
+ "reduce-function-call": "^1.0.1"
+ },
+ "dependencies": {
+ "balanced-match": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz",
+ "integrity": "sha1-yz8+PHMtwPAe5wtAPzAuYddwmDg=",
+ "dev": true
+ }
+ }
+ },
+ "reduce-function-call": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/reduce-function-call/-/reduce-function-call-1.0.3.tgz",
+ "integrity": "sha512-Hl/tuV2VDgWgCSEeWMLwxLZqX7OK59eU1guxXsRKTAyeYimivsKdtcV4fu3r710tpG5GmDKDhQ0HSZLExnNmyQ==",
+ "dev": true,
+ "requires": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "regenerate": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz",
+ "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==",
+ "dev": true
+ },
+ "regenerate-unicode-properties": {
+ "version": "8.2.0",
+ "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz",
+ "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==",
+ "dev": true,
+ "requires": {
+ "regenerate": "^1.4.0"
+ }
+ },
+ "regenerator": {
+ "version": "0.8.40",
+ "resolved": "https://registry.npmjs.org/regenerator/-/regenerator-0.8.40.tgz",
+ "integrity": "sha1-oORXxY69uuV1yfjNdRJ+k3VkNdg=",
+ "dev": true,
+ "requires": {
+ "commoner": "~0.10.3",
+ "defs": "~1.1.0",
+ "esprima-fb": "~15001.1001.0-dev-harmony-fb",
+ "private": "~0.1.5",
+ "recast": "0.10.33",
+ "through": "~2.3.8"
+ }
+ },
+ "regenerator-runtime": {
+ "version": "0.11.1",
+ "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
+ "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg=="
+ },
+ "regenerator-transform": {
+ "version": "0.10.1",
+ "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz",
+ "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==",
+ "dev": true,
+ "requires": {
+ "babel-runtime": "^6.18.0",
+ "babel-types": "^6.19.0",
+ "private": "^0.1.6"
+ }
+ },
+ "regex-cache": {
+ "version": "0.4.4",
+ "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz",
+ "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==",
+ "dev": true,
+ "requires": {
+ "is-equal-shallow": "^0.1.3"
+ }
+ },
+ "regex-not": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz",
+ "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==",
+ "dev": true,
+ "requires": {
+ "extend-shallow": "^3.0.2",
+ "safe-regex": "^1.1.0"
+ }
+ },
+ "regexpu": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/regexpu/-/regexpu-1.3.0.tgz",
+ "integrity": "sha1-5TTcmRqeWEYFDJjebX3UpVyeoW0=",
+ "dev": true,
+ "requires": {
+ "esprima": "^2.6.0",
+ "recast": "^0.10.10",
+ "regenerate": "^1.2.1",
+ "regjsgen": "^0.2.0",
+ "regjsparser": "^0.1.4"
+ },
+ "dependencies": {
+ "esprima": {
+ "version": "2.7.3",
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz",
+ "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=",
+ "dev": true
+ }
+ }
+ },
+ "regexpu-core": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz",
+ "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=",
+ "dev": true,
+ "requires": {
+ "regenerate": "^1.2.1",
+ "regjsgen": "^0.2.0",
+ "regjsparser": "^0.1.4"
+ }
+ },
+ "regjsgen": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz",
+ "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=",
+ "dev": true
+ },
+ "regjsparser": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz",
+ "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=",
+ "dev": true,
+ "requires": {
+ "jsesc": "~0.5.0"
+ },
+ "dependencies": {
+ "jsesc": {
+ "version": "0.5.0",
+ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
+ "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=",
+ "dev": true
+ }
+ }
+ },
+ "remove-trailing-separator": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
+ "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=",
+ "dev": true
+ },
+ "repeat-element": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz",
+ "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==",
+ "dev": true
+ },
+ "repeat-string": {
+ "version": "1.6.1",
+ "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
+ "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=",
+ "dev": true
+ },
+ "repeating": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
+ "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=",
+ "dev": true,
+ "requires": {
+ "is-finite": "^1.0.0"
+ }
+ },
+ "replace-ext": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz",
+ "integrity": "sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ=",
+ "dev": true
+ },
+ "request": {
+ "version": "2.88.2",
+ "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz",
+ "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==",
+ "dev": true,
+ "requires": {
+ "aws-sign2": "~0.7.0",
+ "aws4": "^1.8.0",
+ "caseless": "~0.12.0",
+ "combined-stream": "~1.0.6",
+ "extend": "~3.0.2",
+ "forever-agent": "~0.6.1",
+ "form-data": "~2.3.2",
+ "har-validator": "~5.1.3",
+ "http-signature": "~1.2.0",
+ "is-typedarray": "~1.0.0",
+ "isstream": "~0.1.2",
+ "json-stringify-safe": "~5.0.1",
+ "mime-types": "~2.1.19",
+ "oauth-sign": "~0.9.0",
+ "performance-now": "^2.1.0",
+ "qs": "~6.5.2",
+ "safe-buffer": "^5.1.2",
+ "tough-cookie": "~2.5.0",
+ "tunnel-agent": "^0.6.0",
+ "uuid": "^3.3.2"
+ },
+ "dependencies": {
+ "uuid": {
+ "version": "3.4.0",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
+ "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==",
+ "dev": true
+ }
+ }
+ },
+ "require-directory": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
+ "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
+ "dev": true
+ },
+ "require-main-filename": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz",
+ "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=",
+ "dev": true
+ },
+ "requires-port": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz",
+ "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=",
+ "dev": true
+ },
+ "resolve": {
+ "version": "1.17.0",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz",
+ "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==",
+ "dev": true,
+ "requires": {
+ "path-parse": "^1.0.6"
+ }
+ },
+ "resolve-dir": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz",
+ "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=",
+ "dev": true,
+ "requires": {
+ "expand-tilde": "^2.0.0",
+ "global-modules": "^1.0.0"
+ }
+ },
+ "resolve-url": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
+ "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=",
+ "dev": true
+ },
+ "ret": {
+ "version": "0.1.15",
+ "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
+ "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==",
+ "dev": true
+ },
+ "rework": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/rework/-/rework-1.0.1.tgz",
+ "integrity": "sha1-MIBqhBNCtUUQqkEQhQzUhTQUSqc=",
+ "dev": true,
+ "requires": {
+ "convert-source-map": "^0.3.3",
+ "css": "^2.0.0"
+ },
+ "dependencies": {
+ "convert-source-map": {
+ "version": "0.3.5",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.3.5.tgz",
+ "integrity": "sha1-8dgClQr33SYxof6+BZZVDIarMZA=",
+ "dev": true
+ }
+ }
+ },
+ "rework-import": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/rework-import/-/rework-import-2.1.0.tgz",
+ "integrity": "sha1-wm7StTFZrHvi7GDaIj74lgPB7x8=",
+ "dev": true,
+ "requires": {
+ "css": "^2.0.0",
+ "globby": "^2.0.0",
+ "parse-import": "^2.0.0",
+ "url-regex": "^3.0.0"
+ },
+ "dependencies": {
+ "globby": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/globby/-/globby-2.1.0.tgz",
+ "integrity": "sha1-npGSvNM/Srak+JTl5+qLcTITxII=",
+ "dev": true,
+ "requires": {
+ "array-union": "^1.0.1",
+ "async": "^1.2.1",
+ "glob": "^5.0.3",
+ "object-assign": "^3.0.0"
+ }
+ },
+ "object-assign": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz",
+ "integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I=",
+ "dev": true
+ }
+ }
+ },
+ "rework-plugin-function": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/rework-plugin-function/-/rework-plugin-function-1.0.2.tgz",
+ "integrity": "sha1-Es5G+1sptdk1FGaD9rmM9J0jc7k=",
+ "dev": true,
+ "requires": {
+ "rework-visit": "^1.0.0"
+ }
+ },
+ "rework-plugin-url": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/rework-plugin-url/-/rework-plugin-url-1.1.0.tgz",
+ "integrity": "sha1-q1PosQV7nV7MHIJz/32xhgg3XEU=",
+ "dev": true,
+ "requires": {
+ "rework-plugin-function": "^1.0.0"
+ }
+ },
+ "rework-visit": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/rework-visit/-/rework-visit-1.0.0.tgz",
+ "integrity": "sha1-mUWygD8hni96ygCtuLyfZA+ELJo=",
+ "dev": true
+ },
+ "right-align": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz",
+ "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=",
+ "dev": true,
+ "requires": {
+ "align-text": "^0.1.1"
+ }
+ },
+ "rimraf": {
+ "version": "2.7.1",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
+ "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==",
+ "dev": true,
+ "requires": {
+ "glob": "^7.1.3"
+ },
+ "dependencies": {
+ "glob": {
+ "version": "7.1.6",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
+ "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
+ "dev": true,
+ "requires": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ }
+ }
+ },
+ "ripemd160": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz",
+ "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==",
+ "dev": true,
+ "requires": {
+ "hash-base": "^3.0.0",
+ "inherits": "^2.0.1"
+ }
+ },
+ "run-async": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz",
+ "integrity": "sha1-yK1KXhEGYeQCp9IbUw4AnyX444k=",
+ "dev": true,
+ "requires": {
+ "once": "^1.3.0"
+ }
+ },
+ "rx-lite": {
+ "version": "2.5.2",
+ "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-2.5.2.tgz",
+ "integrity": "sha1-X+9C1Nbna6tRmdIXEyfbcJ5Y5jQ=",
+ "dev": true
+ },
+ "safe-buffer": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
+ "dev": true
+ },
+ "safe-regex": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
+ "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
+ "dev": true,
+ "requires": {
+ "ret": "~0.1.10"
+ }
+ },
+ "safer-buffer": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
+ "dev": true
+ },
+ "sane": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/sane/-/sane-1.5.0.tgz",
+ "integrity": "sha1-pK3q52TQSGIeyyfV+ez1ExAZOfM=",
+ "dev": true,
+ "requires": {
+ "anymatch": "^1.3.0",
+ "exec-sh": "^0.2.0",
+ "fb-watchman": "^1.8.0",
+ "minimatch": "^3.0.2",
+ "minimist": "^1.1.1",
+ "walker": "~1.0.5",
+ "watch": "~0.10.0"
+ },
+ "dependencies": {
+ "bser": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/bser/-/bser-1.0.2.tgz",
+ "integrity": "sha1-OBEWlwsqbe6lZG3RXdcnhES1YWk=",
+ "dev": true,
+ "requires": {
+ "node-int64": "^0.4.0"
+ }
+ },
+ "fb-watchman": {
+ "version": "1.9.2",
+ "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-1.9.2.tgz",
+ "integrity": "sha1-okz0eCf4LTj7Waaa1wt247auc4M=",
+ "dev": true,
+ "requires": {
+ "bser": "1.0.2"
+ }
+ }
+ }
+ },
+ "sax": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
+ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==",
+ "dev": true
+ },
+ "semver": {
+ "version": "4.3.6",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz",
+ "integrity": "sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto=",
+ "dev": true
+ },
+ "send": {
+ "version": "0.17.1",
+ "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz",
+ "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==",
+ "dev": true,
+ "requires": {
+ "debug": "2.6.9",
+ "depd": "~1.1.2",
+ "destroy": "~1.0.4",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "fresh": "0.5.2",
+ "http-errors": "~1.7.2",
+ "mime": "1.6.0",
+ "ms": "2.1.1",
+ "on-finished": "~2.3.0",
+ "range-parser": "~1.2.1",
+ "statuses": "~1.5.0"
+ },
+ "dependencies": {
+ "ms": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
+ "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==",
+ "dev": true
+ }
+ }
+ },
+ "sequencify": {
+ "version": "0.0.7",
+ "resolved": "https://registry.npmjs.org/sequencify/-/sequencify-0.0.7.tgz",
+ "integrity": "sha1-kM/xnQLgcCf9dn9erT57ldHnOAw=",
+ "dev": true
+ },
+ "serve-index": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz",
+ "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=",
+ "dev": true,
+ "requires": {
+ "accepts": "~1.3.4",
+ "batch": "0.6.1",
+ "debug": "2.6.9",
+ "escape-html": "~1.0.3",
+ "http-errors": "~1.6.2",
+ "mime-types": "~2.1.17",
+ "parseurl": "~1.3.2"
+ },
+ "dependencies": {
+ "http-errors": {
+ "version": "1.6.3",
+ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
+ "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=",
+ "dev": true,
+ "requires": {
+ "depd": "~1.1.2",
+ "inherits": "2.0.3",
+ "setprototypeof": "1.1.0",
+ "statuses": ">= 1.4.0 < 2"
+ }
+ },
+ "inherits": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
+ "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
+ "dev": true
+ },
+ "setprototypeof": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
+ "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==",
+ "dev": true
+ }
+ }
+ },
+ "serve-static": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz",
+ "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==",
+ "dev": true,
+ "requires": {
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "parseurl": "~1.3.3",
+ "send": "0.17.1"
+ }
+ },
+ "set-blocking": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
+ "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
+ "dev": true
+ },
+ "set-value": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz",
+ "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==",
+ "dev": true,
+ "requires": {
+ "extend-shallow": "^2.0.1",
+ "is-extendable": "^0.1.1",
+ "is-plain-object": "^2.0.3",
+ "split-string": "^3.0.1"
+ },
+ "dependencies": {
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ }
+ }
+ },
+ "setimmediate": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",
+ "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=",
+ "dev": true
+ },
+ "setprototypeof": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz",
+ "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==",
+ "dev": true
+ },
+ "sha.js": {
+ "version": "2.4.11",
+ "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
+ "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.1",
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "shasum": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/shasum/-/shasum-1.0.2.tgz",
+ "integrity": "sha1-5wEjENj0F/TetXEhUOVni4euVl8=",
+ "dev": true,
+ "requires": {
+ "json-stable-stringify": "~0.0.0",
+ "sha.js": "~2.4.4"
+ }
+ },
+ "shasum-object": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/shasum-object/-/shasum-object-1.0.0.tgz",
+ "integrity": "sha512-Iqo5rp/3xVi6M4YheapzZhhGPVs0yZwHj7wvwQ1B9z8H6zk+FEnI7y3Teq7qwnekfEhu8WmG2z0z4iWZaxLWVg==",
+ "dev": true,
+ "requires": {
+ "fast-safe-stringify": "^2.0.7"
+ }
+ },
+ "shebang-regex": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
+ "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
+ "dev": true
+ },
+ "shell-quote": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-0.0.1.tgz",
+ "integrity": "sha1-GkEZbzwDM8SCMjWT1ohuzxU92YY=",
+ "dev": true
+ },
+ "shelljs": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.3.0.tgz",
+ "integrity": "sha1-NZbmMHp4FUT1kfN9phg2DzHbV7E=",
+ "dev": true
+ },
+ "shellwords": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz",
+ "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==",
+ "dev": true
+ },
+ "sigmund": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz",
+ "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=",
+ "dev": true
+ },
+ "signal-exit": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz",
+ "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==",
+ "dev": true
+ },
+ "simple-concat": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.0.tgz",
+ "integrity": "sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY=",
+ "dev": true
+ },
+ "simple-fmt": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/simple-fmt/-/simple-fmt-0.1.0.tgz",
+ "integrity": "sha1-GRv1ZqWeZTBILLJatTtKjchcOms=",
+ "dev": true
+ },
+ "simple-is": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/simple-is/-/simple-is-0.2.0.tgz",
+ "integrity": "sha1-Krt1qt453rXMgVzhDmGRFkhQuvA=",
+ "dev": true
+ },
+ "slash": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz",
+ "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=",
+ "dev": true
+ },
+ "snapdragon": {
+ "version": "0.8.2",
+ "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
+ "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==",
+ "dev": true,
+ "requires": {
+ "base": "^0.11.1",
+ "debug": "^2.2.0",
+ "define-property": "^0.2.5",
+ "extend-shallow": "^2.0.1",
+ "map-cache": "^0.2.2",
+ "source-map": "^0.5.6",
+ "source-map-resolve": "^0.5.0",
+ "use": "^3.1.0"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^0.1.0"
+ }
+ },
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ }
+ }
+ },
+ "snapdragon-node": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz",
+ "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==",
+ "dev": true,
+ "requires": {
+ "define-property": "^1.0.0",
+ "isobject": "^3.0.0",
+ "snapdragon-util": "^3.0.1"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^1.0.0"
+ }
+ },
+ "is-accessor-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-data-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-descriptor": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
+ "dev": true,
+ "requires": {
+ "is-accessor-descriptor": "^1.0.0",
+ "is-data-descriptor": "^1.0.0",
+ "kind-of": "^6.0.2"
+ }
+ },
+ "kind-of": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
+ "dev": true
+ }
+ }
+ },
+ "snapdragon-util": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz",
+ "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^3.2.0"
+ }
+ },
+ "sockjs": {
+ "version": "0.3.20",
+ "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.20.tgz",
+ "integrity": "sha512-SpmVOVpdq0DJc0qArhF3E5xsxvaiqGNb73XfgBpK1y3UD5gs8DSo8aCTsuT5pX8rssdc2NDIzANwP9eCAiSdTA==",
+ "dev": true,
+ "requires": {
+ "faye-websocket": "^0.10.0",
+ "uuid": "^3.4.0",
+ "websocket-driver": "0.6.5"
+ },
+ "dependencies": {
+ "uuid": {
+ "version": "3.4.0",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
+ "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==",
+ "dev": true
+ }
+ }
+ },
+ "sockjs-client": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.4.0.tgz",
+ "integrity": "sha512-5zaLyO8/nri5cua0VtOrFXBPK1jbL4+1cebT/mmKA1E1ZXOvJrII75bPu0l0k843G/+iAbhEqzyKr0w/eCCj7g==",
+ "dev": true,
+ "requires": {
+ "debug": "^3.2.5",
+ "eventsource": "^1.0.7",
+ "faye-websocket": "~0.11.1",
+ "inherits": "^2.0.3",
+ "json3": "^3.3.2",
+ "url-parse": "^1.4.3"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "3.2.6",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
+ "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
+ "dev": true,
+ "requires": {
+ "ms": "^2.1.1"
+ }
+ },
+ "faye-websocket": {
+ "version": "0.11.3",
+ "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.3.tgz",
+ "integrity": "sha512-D2y4bovYpzziGgbHYtGCMjlJM36vAl/y+xUyn1C+FVx8szd1E+86KwVw6XvYSzOP8iMpm1X0I4xJD+QtUb36OA==",
+ "dev": true,
+ "requires": {
+ "websocket-driver": ">=0.5.1"
+ }
+ },
+ "ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+ "dev": true
+ }
+ }
+ },
+ "sort-keys": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz",
+ "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=",
+ "dev": true,
+ "requires": {
+ "is-plain-obj": "^1.0.0"
+ }
+ },
+ "source-list-map": {
+ "version": "0.1.8",
+ "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-0.1.8.tgz",
+ "integrity": "sha1-xVCyq1Qn9rPyH1r+rYjE9Vh7IQY=",
+ "dev": true
+ },
+ "source-map": {
+ "version": "0.5.7",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
+ "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
+ "dev": true
+ },
+ "source-map-resolve": {
+ "version": "0.5.3",
+ "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz",
+ "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==",
+ "dev": true,
+ "requires": {
+ "atob": "^2.1.2",
+ "decode-uri-component": "^0.2.0",
+ "resolve-url": "^0.2.1",
+ "source-map-url": "^0.4.0",
+ "urix": "^0.1.0"
+ }
+ },
+ "source-map-support": {
+ "version": "0.4.18",
+ "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz",
+ "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==",
+ "dev": true,
+ "requires": {
+ "source-map": "^0.5.6"
+ }
+ },
+ "source-map-url": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz",
+ "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=",
+ "dev": true
+ },
+ "sourcemapped-stacktrace": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/sourcemapped-stacktrace/-/sourcemapped-stacktrace-1.1.11.tgz",
+ "integrity": "sha512-O0pcWjJqzQFVsisPlPXuNawJHHg9N9UgpJ/aDmvi9+vnS3x1C0NhwkVFzzZ1VN0Xo+bekyweoqYvBw5ZBKiNnQ==",
+ "dev": true,
+ "requires": {
+ "source-map": "0.5.6"
+ },
+ "dependencies": {
+ "source-map": {
+ "version": "0.5.6",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz",
+ "integrity": "sha1-dc449SvwczxafwwRjYEzSiu19BI=",
+ "dev": true
+ }
+ }
+ },
+ "sparkles": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz",
+ "integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==",
+ "dev": true
+ },
+ "spdx-correct": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz",
+ "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==",
+ "dev": true,
+ "requires": {
+ "spdx-expression-parse": "^3.0.0",
+ "spdx-license-ids": "^3.0.0"
+ }
+ },
+ "spdx-exceptions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz",
+ "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==",
+ "dev": true
+ },
+ "spdx-expression-parse": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz",
+ "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==",
+ "dev": true,
+ "requires": {
+ "spdx-exceptions": "^2.1.0",
+ "spdx-license-ids": "^3.0.0"
+ }
+ },
+ "spdx-license-ids": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz",
+ "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==",
+ "dev": true
+ },
+ "split-string": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
+ "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==",
+ "dev": true,
+ "requires": {
+ "extend-shallow": "^3.0.0"
+ }
+ },
+ "sprintf-js": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
+ "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
+ "dev": true
+ },
+ "sshpk": {
+ "version": "1.16.1",
+ "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz",
+ "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==",
+ "dev": true,
+ "requires": {
+ "asn1": "~0.2.3",
+ "assert-plus": "^1.0.0",
+ "bcrypt-pbkdf": "^1.0.0",
+ "dashdash": "^1.12.0",
+ "ecc-jsbn": "~0.1.1",
+ "getpass": "^0.1.1",
+ "jsbn": "~0.1.0",
+ "safer-buffer": "^2.0.2",
+ "tweetnacl": "~0.14.0"
+ }
+ },
+ "stable": {
+ "version": "0.1.8",
+ "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz",
+ "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==",
+ "dev": true
+ },
+ "stackframe": {
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-0.3.1.tgz",
+ "integrity": "sha1-M6qE8Rd6VUjIk1Uzy/6zQgl19aQ=",
+ "dev": true
+ },
+ "static-extend": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz",
+ "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=",
+ "dev": true,
+ "requires": {
+ "define-property": "^0.2.5",
+ "object-copy": "^0.1.0"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^0.1.0"
+ }
+ }
+ }
+ },
+ "statuses": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
+ "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=",
+ "dev": true
+ },
+ "stream-browserify": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz",
+ "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==",
+ "dev": true,
+ "requires": {
+ "inherits": "~2.0.1",
+ "readable-stream": "^2.0.2"
+ }
+ },
+ "stream-cache": {
+ "version": "0.0.2",
+ "resolved": "https://registry.npmjs.org/stream-cache/-/stream-cache-0.0.2.tgz",
+ "integrity": "sha1-GsWtaDJCjKVWZ9ve45Xa1ObbEY8=",
+ "dev": true
+ },
+ "stream-combiner2": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.0.2.tgz",
+ "integrity": "sha1-unKmtQy/q/qVD8i8h2BL0B62BnE=",
+ "dev": true,
+ "requires": {
+ "duplexer2": "~0.0.2",
+ "through2": "~0.5.1"
+ },
+ "dependencies": {
+ "readable-stream": {
+ "version": "1.0.34",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
+ "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=",
+ "dev": true,
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.1",
+ "isarray": "0.0.1",
+ "string_decoder": "~0.10.x"
+ }
+ },
+ "through2": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-0.5.1.tgz",
+ "integrity": "sha1-390BLrnHAOIyP9M084rGIqs3Lac=",
+ "dev": true,
+ "requires": {
+ "readable-stream": "~1.0.17",
+ "xtend": "~3.0.0"
+ }
+ },
+ "xtend": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-3.0.0.tgz",
+ "integrity": "sha1-XM50B7r2Qsunvs2laBEcST9ZZlo=",
+ "dev": true
+ }
+ }
+ },
+ "stream-consume": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/stream-consume/-/stream-consume-0.1.1.tgz",
+ "integrity": "sha512-tNa3hzgkjEP7XbCkbRXe1jpg+ievoa0O4SCFlMOYEscGSS4JJsckGL8swUyAa/ApGU3Ae4t6Honor4HhL+tRyg==",
+ "dev": true
+ },
+ "stream-http": {
+ "version": "1.7.1",
+ "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-1.7.1.tgz",
+ "integrity": "sha1-09Km4Uw2o4udr7GZrue7xXBRmXg=",
+ "dev": true,
+ "requires": {
+ "builtin-status-codes": "^1.0.0",
+ "foreach": "^2.0.5",
+ "indexof": "0.0.1",
+ "inherits": "^2.0.1",
+ "object-keys": "^1.0.4",
+ "xtend": "^4.0.0"
+ }
+ },
+ "stream-splicer": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/stream-splicer/-/stream-splicer-1.3.2.tgz",
+ "integrity": "sha1-PARBvhW5v04iYnXm3IOWR0VUZmE=",
+ "dev": true,
+ "requires": {
+ "indexof": "0.0.1",
+ "inherits": "^2.0.1",
+ "isarray": "~0.0.1",
+ "readable-stream": "^1.1.13-1",
+ "readable-wrap": "^1.0.0",
+ "through2": "^1.0.0"
+ },
+ "dependencies": {
+ "readable-stream": {
+ "version": "1.1.14",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
+ "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
+ "dev": true,
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.1",
+ "isarray": "0.0.1",
+ "string_decoder": "~0.10.x"
+ }
+ }
+ }
+ },
+ "strict-uri-encode": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz",
+ "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=",
+ "dev": true
+ },
+ "string-length": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/string-length/-/string-length-1.0.1.tgz",
+ "integrity": "sha1-VpcPscOFWOnnC3KL894mmsRa36w=",
+ "dev": true,
+ "requires": {
+ "strip-ansi": "^3.0.0"
+ }
+ },
+ "string-width": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
+ "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
+ "dev": true,
+ "requires": {
+ "code-point-at": "^1.0.0",
+ "is-fullwidth-code-point": "^1.0.0",
+ "strip-ansi": "^3.0.0"
+ }
+ },
+ "string_decoder": {
+ "version": "0.10.31",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
+ "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
+ "dev": true
+ },
+ "stringmap": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/stringmap/-/stringmap-0.2.2.tgz",
+ "integrity": "sha1-VWwTeyWPlCuHdvWy71gqoGnX0bE=",
+ "dev": true
+ },
+ "stringset": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/stringset/-/stringset-0.2.1.tgz",
+ "integrity": "sha1-7yWcTjSTRDd/zRyRPdLoSMnAQrU=",
+ "dev": true
+ },
+ "strip-ansi": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
+ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^2.0.0"
+ }
+ },
+ "strip-bom": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-1.0.0.tgz",
+ "integrity": "sha1-hbiGLzhEtabV7IRnqTWYFzo295Q=",
+ "dev": true,
+ "requires": {
+ "first-chunk-stream": "^1.0.0",
+ "is-utf8": "^0.2.0"
+ }
+ },
+ "strip-indent": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
+ "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
+ "dev": true,
+ "requires": {
+ "get-stdin": "^4.0.1"
+ }
+ },
+ "strip-json-comments": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz",
+ "integrity": "sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E=",
+ "dev": true
+ },
+ "style-loader": {
+ "version": "0.13.2",
+ "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-0.13.2.tgz",
+ "integrity": "sha1-dFMzhM9pjHEEx5URULSXF63C87s=",
+ "dev": true,
+ "requires": {
+ "loader-utils": "^1.0.2"
+ },
+ "dependencies": {
+ "big.js": {
+ "version": "5.2.2",
+ "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
+ "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==",
+ "dev": true
+ },
+ "emojis-list": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
+ "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==",
+ "dev": true
+ },
+ "json5": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz",
+ "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==",
+ "dev": true,
+ "requires": {
+ "minimist": "^1.2.0"
+ }
+ },
+ "loader-utils": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz",
+ "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==",
+ "dev": true,
+ "requires": {
+ "big.js": "^5.2.2",
+ "emojis-list": "^3.0.0",
+ "json5": "^1.0.1"
+ }
+ }
+ }
+ },
+ "styled-components": {
+ "version": "1.4.6",
+ "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-1.4.6.tgz",
+ "integrity": "sha1-WPMuimq1EPsUgekB6DjgR38UiwY=",
+ "dev": true,
+ "requires": {
+ "buffer": "^5.0.2",
+ "css-to-react-native": "^1.0.6",
+ "fbjs": "^0.8.7",
+ "inline-style-prefixer": "^2.0.5",
+ "is-function": "^1.0.1",
+ "is-plain-object": "^2.0.1",
+ "prop-types": "^15.5.4",
+ "supports-color": "^3.1.2"
+ },
+ "dependencies": {
+ "base64-js": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz",
+ "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==",
+ "dev": true
+ },
+ "buffer": {
+ "version": "5.6.0",
+ "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz",
+ "integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==",
+ "dev": true,
+ "requires": {
+ "base64-js": "^1.0.2",
+ "ieee754": "^1.1.4"
+ }
+ },
+ "supports-color": {
+ "version": "3.2.3",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz",
+ "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=",
+ "dev": true,
+ "requires": {
+ "has-flag": "^1.0.0"
+ }
+ }
+ }
+ },
+ "subarg": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz",
+ "integrity": "sha1-9izxdYHplrSPyWVpn1TAauJouNI=",
+ "dev": true,
+ "requires": {
+ "minimist": "^1.1.0"
+ }
+ },
+ "supports-color": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
+ "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
+ "dev": true
+ },
+ "svgo": {
+ "version": "0.7.2",
+ "resolved": "https://registry.npmjs.org/svgo/-/svgo-0.7.2.tgz",
+ "integrity": "sha1-n1dyQTlSE1xv779Ar+ak+qiLS7U=",
+ "dev": true,
+ "requires": {
+ "coa": "~1.0.1",
+ "colors": "~1.1.2",
+ "csso": "~2.3.1",
+ "js-yaml": "~3.7.0",
+ "mkdirp": "~0.5.1",
+ "sax": "~1.2.1",
+ "whet.extend": "~0.9.9"
+ }
+ },
+ "symbol-tree": {
+ "version": "3.2.4",
+ "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz",
+ "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==",
+ "dev": true
+ },
+ "syntax-error": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.4.0.tgz",
+ "integrity": "sha512-YPPlu67mdnHGTup2A8ff7BC2Pjq0e0Yp/IyTFN03zWO0RcK07uLcbi7C2KpGR2FvWbaB0+bfE27a+sBKebSo7w==",
+ "dev": true,
+ "requires": {
+ "acorn-node": "^1.2.0"
+ }
+ },
+ "tapable": {
+ "version": "0.1.10",
+ "resolved": "https://registry.npmjs.org/tapable/-/tapable-0.1.10.tgz",
+ "integrity": "sha1-KcNXB8K3DlDQdIK10gLo7URtr9Q=",
+ "dev": true
+ },
+ "temp-write": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-0.1.1.tgz",
+ "integrity": "sha1-C2Rng43Xf79/YqDJPah5cy/9qTI=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "~2.0.0",
+ "tempfile": "~0.1.2"
+ }
+ },
+ "tempfile": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-0.1.3.tgz",
+ "integrity": "sha1-fWtxAEcznTn4RzJ6BW2t8YMQMBA=",
+ "dev": true,
+ "requires": {
+ "uuid": "~1.4.0"
+ }
+ },
+ "test-exclude": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-4.2.3.tgz",
+ "integrity": "sha512-SYbXgY64PT+4GAL2ocI3HwPa4Q4TBKm0cwAVeKOt/Aoc0gSpNRjJX8w0pA1LMKZ3LBmd8pYBqApFNQLII9kavA==",
+ "dev": true,
+ "requires": {
+ "arrify": "^1.0.1",
+ "micromatch": "^2.3.11",
+ "object-assign": "^4.1.0",
+ "read-pkg-up": "^1.0.1",
+ "require-main-filename": "^1.0.1"
+ },
+ "dependencies": {
+ "arr-diff": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
+ "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
+ "dev": true,
+ "requires": {
+ "arr-flatten": "^1.0.1"
+ }
+ },
+ "array-unique": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
+ "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=",
+ "dev": true
+ },
+ "braces": {
+ "version": "1.8.5",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
+ "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
+ "dev": true,
+ "requires": {
+ "expand-range": "^1.8.1",
+ "preserve": "^0.2.0",
+ "repeat-element": "^1.1.2"
+ }
+ },
+ "expand-brackets": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
+ "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
+ "dev": true,
+ "requires": {
+ "is-posix-bracket": "^0.1.0"
+ }
+ },
+ "extglob": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
+ "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^1.0.0"
+ }
+ },
+ "is-extglob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
+ "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=",
+ "dev": true
+ },
+ "is-glob": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
+ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^1.0.0"
+ }
+ },
+ "micromatch": {
+ "version": "2.3.11",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",
+ "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=",
+ "dev": true,
+ "requires": {
+ "arr-diff": "^2.0.0",
+ "array-unique": "^0.2.1",
+ "braces": "^1.8.2",
+ "expand-brackets": "^0.1.4",
+ "extglob": "^0.3.1",
+ "filename-regex": "^2.0.0",
+ "is-extglob": "^1.0.0",
+ "is-glob": "^2.0.1",
+ "kind-of": "^3.0.2",
+ "normalize-path": "^2.0.1",
+ "object.omit": "^2.0.0",
+ "parse-glob": "^3.0.4",
+ "regex-cache": "^0.4.2"
+ }
+ }
+ }
+ },
+ "text-table": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
+ "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
+ "dev": true
+ },
+ "throat": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/throat/-/throat-3.2.0.tgz",
+ "integrity": "sha512-/EY8VpvlqJ+sFtLPeOgc8Pl7kQVOWv0woD87KTXVHPIAE842FGT+rokxIhe8xIUP1cfgrkt0as0vDLjDiMtr8w==",
+ "dev": true
+ },
+ "through": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
+ "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
+ "dev": true
+ },
+ "through2": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-1.1.1.tgz",
+ "integrity": "sha1-CEfLxESfNAVXTb3M2buEG4OsNUU=",
+ "dev": true,
+ "requires": {
+ "readable-stream": ">=1.1.13-1 <1.2.0-0",
+ "xtend": ">=4.0.0 <4.1.0-0"
+ },
+ "dependencies": {
+ "readable-stream": {
+ "version": "1.1.14",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
+ "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
+ "dev": true,
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.1",
+ "isarray": "0.0.1",
+ "string_decoder": "~0.10.x"
+ }
+ }
+ }
+ },
+ "tildify": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/tildify/-/tildify-1.2.0.tgz",
+ "integrity": "sha1-3OwD9V3Km3qj5bBPIYF+tW5jWIo=",
+ "dev": true,
+ "requires": {
+ "os-homedir": "^1.0.0"
+ }
+ },
+ "time-stamp": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz",
+ "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=",
+ "dev": true
+ },
+ "timers-browserify": {
+ "version": "1.4.2",
+ "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.2.tgz",
+ "integrity": "sha1-ycWLV1voQHN1y14kYtrO50NZ9B0=",
+ "dev": true,
+ "requires": {
+ "process": "~0.11.0"
+ }
+ },
+ "tmpl": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz",
+ "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=",
+ "dev": true
+ },
+ "to-arraybuffer": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz",
+ "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=",
+ "dev": true
+ },
+ "to-double-quotes": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/to-double-quotes/-/to-double-quotes-1.0.2.tgz",
+ "integrity": "sha1-u27TbHhjTD1k/YelGtWGDcWU7f0=",
+ "dev": true,
+ "requires": {
+ "get-stdin": "^3.0.0"
+ },
+ "dependencies": {
+ "get-stdin": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-3.0.2.tgz",
+ "integrity": "sha1-wc7SS5A5s43thb3xYeV3E7bdSr4=",
+ "dev": true
+ }
+ }
+ },
+ "to-fast-properties": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz",
+ "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=",
+ "dev": true
+ },
+ "to-object-path": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz",
+ "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=",
+ "dev": true,
+ "requires": {
+ "kind-of": "^3.0.2"
+ }
+ },
+ "to-regex": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz",
+ "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==",
+ "dev": true,
+ "requires": {
+ "define-property": "^2.0.2",
+ "extend-shallow": "^3.0.2",
+ "regex-not": "^1.0.2",
+ "safe-regex": "^1.1.0"
+ }
+ },
+ "to-regex-range": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
+ "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=",
+ "dev": true,
+ "requires": {
+ "is-number": "^3.0.0",
+ "repeat-string": "^1.6.1"
+ }
+ },
+ "to-single-quotes": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/to-single-quotes/-/to-single-quotes-1.0.4.tgz",
+ "integrity": "sha1-LuqBma8myhFx9TV8WeGS1WXuUxM=",
+ "dev": true,
+ "requires": {
+ "get-stdin": "^3.0.0"
+ },
+ "dependencies": {
+ "get-stdin": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-3.0.2.tgz",
+ "integrity": "sha1-wc7SS5A5s43thb3xYeV3E7bdSr4=",
+ "dev": true
+ }
+ }
+ },
+ "toidentifier": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz",
+ "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==",
+ "dev": true
+ },
+ "tough-cookie": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz",
+ "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==",
+ "dev": true,
+ "requires": {
+ "psl": "^1.1.28",
+ "punycode": "^2.1.1"
+ },
+ "dependencies": {
+ "punycode": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
+ "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
+ "dev": true
+ }
+ }
+ },
+ "tr46": {
+ "version": "0.0.3",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
+ "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=",
+ "dev": true
+ },
+ "trim-newlines": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
+ "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=",
+ "dev": true
+ },
+ "trim-right": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz",
+ "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=",
+ "dev": true
+ },
+ "try-resolve": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/try-resolve/-/try-resolve-1.0.1.tgz",
+ "integrity": "sha1-z95vq9ctY+V5fPqrhzq76OcA6RI=",
+ "dev": true
+ },
+ "tryor": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/tryor/-/tryor-0.1.2.tgz",
+ "integrity": "sha1-gUXkynyv9ArN48z5Rui4u3W0Fys=",
+ "dev": true
+ },
+ "tty-browserify": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz",
+ "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==",
+ "dev": true
+ },
+ "tunnel-agent": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
+ "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
+ "dev": true,
+ "requires": {
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "tweetnacl": {
+ "version": "0.14.5",
+ "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
+ "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=",
+ "dev": true
+ },
+ "type": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz",
+ "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==",
+ "dev": true
+ },
+ "type-check": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
+ "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
+ "dev": true,
+ "requires": {
+ "prelude-ls": "~1.1.2"
+ }
+ },
+ "type-is": {
+ "version": "1.6.18",
+ "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
+ "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
+ "dev": true,
+ "requires": {
+ "media-typer": "0.3.0",
+ "mime-types": "~2.1.24"
+ }
+ },
+ "typedarray": {
+ "version": "0.0.6",
+ "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
+ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
+ "dev": true
+ },
+ "ua-parser-js": {
+ "version": "0.7.21",
+ "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.21.tgz",
+ "integrity": "sha512-+O8/qh/Qj8CgC6eYBVBykMrNtp5Gebn4dlGD/kKXVkJNDwyrAwSIqwz8CDf+tsAIWVycKcku6gIXJ0qwx/ZXaQ==",
+ "dev": true
+ },
+ "uglify-js": {
+ "version": "3.9.1",
+ "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.9.1.tgz",
+ "integrity": "sha512-JUPoL1jHsc9fOjVFHdQIhqEEJsQvfKDjlubcCilu8U26uZ73qOg8VsN8O1jbuei44ZPlwL7kmbAdM4tzaUvqnA==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "commander": "~2.20.3"
+ }
+ },
+ "uglify-to-browserify": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz",
+ "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=",
+ "dev": true
+ },
+ "umd": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/umd/-/umd-3.0.3.tgz",
+ "integrity": "sha512-4IcGSufhFshvLNcMCV80UnQVlZ5pMOC8mvNPForqwA4+lzYQuetTESLDQkeLmihq8bRcnpbQa48Wb8Lh16/xow==",
+ "dev": true
+ },
+ "unc-path-regex": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz",
+ "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=",
+ "dev": true
+ },
+ "uncontrollable": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/uncontrollable/-/uncontrollable-4.1.0.tgz",
+ "integrity": "sha1-4DWCkSUuGGUiLZCTmxny9J+Bwak=",
+ "dev": true,
+ "requires": {
+ "invariant": "^2.1.0"
+ }
+ },
+ "undeclared-identifiers": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/undeclared-identifiers/-/undeclared-identifiers-1.1.3.tgz",
+ "integrity": "sha512-pJOW4nxjlmfwKApE4zvxLScM/njmwj/DiUBv7EabwE4O8kRUy+HIwxQtZLBPll/jx1LJyBcqNfB3/cpv9EZwOw==",
+ "dev": true,
+ "requires": {
+ "acorn-node": "^1.3.0",
+ "dash-ast": "^1.0.0",
+ "get-assigned-identifiers": "^1.2.0",
+ "simple-concat": "^1.0.0",
+ "xtend": "^4.0.1"
+ }
+ },
+ "unicode-canonical-property-names-ecmascript": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz",
+ "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==",
+ "dev": true
+ },
+ "unicode-match-property-ecmascript": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz",
+ "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==",
+ "dev": true,
+ "requires": {
+ "unicode-canonical-property-names-ecmascript": "^1.0.4",
+ "unicode-property-aliases-ecmascript": "^1.0.4"
+ }
+ },
+ "unicode-match-property-value-ecmascript": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz",
+ "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==",
+ "dev": true
+ },
+ "unicode-property-aliases-ecmascript": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz",
+ "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==",
+ "dev": true
+ },
+ "union-value": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz",
+ "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==",
+ "dev": true,
+ "requires": {
+ "arr-union": "^3.1.0",
+ "get-value": "^2.0.6",
+ "is-extendable": "^0.1.1",
+ "set-value": "^2.0.1"
+ }
+ },
+ "uniq": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz",
+ "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=",
+ "dev": true
+ },
+ "uniqs": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz",
+ "integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=",
+ "dev": true
+ },
+ "unique-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-1.0.0.tgz",
+ "integrity": "sha1-1ZpKdUJ0R9mqbJHnAmP40mpLEEs=",
+ "dev": true
+ },
+ "unpipe": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
+ "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=",
+ "dev": true
+ },
+ "unset-value": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz",
+ "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=",
+ "dev": true,
+ "requires": {
+ "has-value": "^0.3.1",
+ "isobject": "^3.0.0"
+ },
+ "dependencies": {
+ "has-value": {
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz",
+ "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=",
+ "dev": true,
+ "requires": {
+ "get-value": "^2.0.3",
+ "has-values": "^0.1.4",
+ "isobject": "^2.0.0"
+ },
+ "dependencies": {
+ "isobject": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
+ "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
+ "dev": true,
+ "requires": {
+ "isarray": "1.0.0"
+ }
+ }
+ }
+ },
+ "has-values": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz",
+ "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=",
+ "dev": true
+ },
+ "isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
+ "dev": true
+ }
+ }
+ },
+ "upath": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz",
+ "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==",
+ "dev": true
+ },
+ "uri-js": {
+ "version": "4.2.2",
+ "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
+ "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==",
+ "dev": true,
+ "requires": {
+ "punycode": "^2.1.0"
+ },
+ "dependencies": {
+ "punycode": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
+ "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
+ "dev": true
+ }
+ }
+ },
+ "urix": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz",
+ "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=",
+ "dev": true
+ },
+ "url": {
+ "version": "0.10.3",
+ "resolved": "https://registry.npmjs.org/url/-/url-0.10.3.tgz",
+ "integrity": "sha1-Ah5NnHcF8hu/N9A861h2dAJ3TGQ=",
+ "dev": true,
+ "requires": {
+ "punycode": "1.3.2",
+ "querystring": "0.2.0"
+ },
+ "dependencies": {
+ "punycode": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz",
+ "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=",
+ "dev": true
+ }
+ }
+ },
+ "url-parse": {
+ "version": "1.4.7",
+ "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.7.tgz",
+ "integrity": "sha512-d3uaVyzDB9tQoSXFvuSUNFibTd9zxd2bkVrDRvF5TmvWWQwqE4lgYJ5m+x1DbecWkw+LK4RNl2CU1hHuOKPVlg==",
+ "dev": true,
+ "requires": {
+ "querystringify": "^2.1.1",
+ "requires-port": "^1.0.0"
+ }
+ },
+ "url-regex": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/url-regex/-/url-regex-3.2.0.tgz",
+ "integrity": "sha1-260eDJ4p4QXdCx8J9oYvf9tIJyQ=",
+ "dev": true,
+ "requires": {
+ "ip-regex": "^1.0.1"
+ }
+ },
+ "use": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
+ "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
+ "dev": true
+ },
+ "user-home": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz",
+ "integrity": "sha1-K1viOjK2Onyd640PKNSFcko98ZA=",
+ "dev": true
+ },
+ "util": {
+ "version": "0.10.4",
+ "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz",
+ "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==",
+ "dev": true,
+ "requires": {
+ "inherits": "2.0.3"
+ },
+ "dependencies": {
+ "inherits": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
+ "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
+ "dev": true
+ }
+ }
+ },
+ "util-deprecate": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
+ "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
+ "dev": true
+ },
+ "utils-merge": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
+ "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=",
+ "dev": true
+ },
+ "uuid": {
+ "version": "1.4.2",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-1.4.2.tgz",
+ "integrity": "sha1-RTAZ9oaWam34PNxSROfJkOzDMvw=",
+ "dev": true
+ },
+ "v8flags": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-2.1.1.tgz",
+ "integrity": "sha1-qrGh+jDUX4jdMhFIh1rALAtV5bQ=",
+ "dev": true,
+ "requires": {
+ "user-home": "^1.1.1"
+ }
+ },
+ "validate-npm-package-license": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
+ "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
+ "dev": true,
+ "requires": {
+ "spdx-correct": "^3.0.0",
+ "spdx-expression-parse": "^3.0.0"
+ }
+ },
+ "vary": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
+ "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=",
+ "dev": true
+ },
+ "vendors": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.4.tgz",
+ "integrity": "sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==",
+ "dev": true
+ },
+ "verror": {
+ "version": "1.10.0",
+ "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
+ "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
+ "dev": true,
+ "requires": {
+ "assert-plus": "^1.0.0",
+ "core-util-is": "1.0.2",
+ "extsprintf": "^1.2.0"
+ }
+ },
+ "vinyl": {
+ "version": "0.5.3",
+ "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.5.3.tgz",
+ "integrity": "sha1-sEVbOPxeDPMNQyUTLkYZcMIJHN4=",
+ "dev": true,
+ "requires": {
+ "clone": "^1.0.0",
+ "clone-stats": "^0.0.1",
+ "replace-ext": "0.0.1"
+ }
+ },
+ "vinyl-fs": {
+ "version": "0.3.14",
+ "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-0.3.14.tgz",
+ "integrity": "sha1-mmhRzhysHBzqX+hsCTHWIMLPqeY=",
+ "dev": true,
+ "requires": {
+ "defaults": "^1.0.0",
+ "glob-stream": "^3.1.5",
+ "glob-watcher": "^0.0.6",
+ "graceful-fs": "^3.0.0",
+ "mkdirp": "^0.5.0",
+ "strip-bom": "^1.0.0",
+ "through2": "^0.6.1",
+ "vinyl": "^0.4.0"
+ },
+ "dependencies": {
+ "clone": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz",
+ "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=",
+ "dev": true
+ },
+ "readable-stream": {
+ "version": "1.0.34",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
+ "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=",
+ "dev": true,
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.1",
+ "isarray": "0.0.1",
+ "string_decoder": "~0.10.x"
+ }
+ },
+ "through2": {
+ "version": "0.6.5",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz",
+ "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=",
+ "dev": true,
+ "requires": {
+ "readable-stream": ">=1.0.33-1 <1.1.0-0",
+ "xtend": ">=4.0.0 <4.1.0-0"
+ }
+ },
+ "vinyl": {
+ "version": "0.4.6",
+ "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz",
+ "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=",
+ "dev": true,
+ "requires": {
+ "clone": "^0.2.0",
+ "clone-stats": "^0.0.1"
+ }
+ }
+ }
+ },
+ "vinyl-source-stream": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/vinyl-source-stream/-/vinyl-source-stream-1.1.2.tgz",
+ "integrity": "sha1-YrU6E1YQqJbpjKlr7jqH8Aio54A=",
+ "dev": true,
+ "requires": {
+ "through2": "^2.0.3",
+ "vinyl": "^0.4.3"
+ },
+ "dependencies": {
+ "clone": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz",
+ "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=",
+ "dev": true
+ },
+ "through2": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
+ "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
+ "dev": true,
+ "requires": {
+ "readable-stream": "~2.3.6",
+ "xtend": "~4.0.1"
+ }
+ },
+ "vinyl": {
+ "version": "0.4.6",
+ "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz",
+ "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=",
+ "dev": true,
+ "requires": {
+ "clone": "^0.2.0",
+ "clone-stats": "^0.0.1"
+ }
+ }
+ }
+ },
+ "vinyl-sourcemaps-apply": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz",
+ "integrity": "sha1-q2VJ1h0XLCsbh75cUI0jnI74dwU=",
+ "dev": true,
+ "requires": {
+ "source-map": "^0.5.1"
+ }
+ },
+ "vm-browserify": {
+ "version": "0.0.4",
+ "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz",
+ "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=",
+ "dev": true,
+ "requires": {
+ "indexof": "0.0.1"
+ }
+ },
+ "walker": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz",
+ "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=",
+ "dev": true,
+ "requires": {
+ "makeerror": "1.0.x"
+ }
+ },
+ "warning": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz",
+ "integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==",
+ "requires": {
+ "loose-envify": "^1.0.0"
+ }
+ },
+ "watch": {
+ "version": "0.10.0",
+ "resolved": "https://registry.npmjs.org/watch/-/watch-0.10.0.tgz",
+ "integrity": "sha1-d3mLLaD5kQ1ZXxrOWwwiWFIfIdw=",
+ "dev": true
+ },
+ "watchify": {
+ "version": "3.11.1",
+ "resolved": "https://registry.npmjs.org/watchify/-/watchify-3.11.1.tgz",
+ "integrity": "sha512-WwnUClyFNRMB2NIiHgJU9RQPQNqVeFk7OmZaWf5dC5EnNa0Mgr7imBydbaJ7tGTuPM2hz1Cb4uiBvK9NVxMfog==",
+ "dev": true,
+ "requires": {
+ "anymatch": "^2.0.0",
+ "browserify": "^16.1.0",
+ "chokidar": "^2.1.1",
+ "defined": "^1.0.0",
+ "outpipe": "^1.1.0",
+ "through2": "^2.0.0",
+ "xtend": "^4.0.0"
+ },
+ "dependencies": {
+ "anymatch": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
+ "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
+ "dev": true,
+ "requires": {
+ "micromatch": "^3.1.4",
+ "normalize-path": "^2.1.1"
+ }
+ },
+ "assert": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz",
+ "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==",
+ "dev": true,
+ "requires": {
+ "object-assign": "^4.1.1",
+ "util": "0.10.3"
+ },
+ "dependencies": {
+ "inherits": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
+ "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=",
+ "dev": true
+ },
+ "util": {
+ "version": "0.10.3",
+ "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
+ "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=",
+ "dev": true,
+ "requires": {
+ "inherits": "2.0.1"
+ }
+ }
+ }
+ },
+ "base64-js": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz",
+ "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==",
+ "dev": true
+ },
+ "browser-pack": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/browser-pack/-/browser-pack-6.1.0.tgz",
+ "integrity": "sha512-erYug8XoqzU3IfcU8fUgyHqyOXqIE4tUTTQ+7mqUjQlvnXkOO6OlT9c/ZoJVHYoAaqGxr09CN53G7XIsO4KtWA==",
+ "dev": true,
+ "requires": {
+ "JSONStream": "^1.0.3",
+ "combine-source-map": "~0.8.0",
+ "defined": "^1.0.0",
+ "safe-buffer": "^5.1.1",
+ "through2": "^2.0.0",
+ "umd": "^3.0.0"
+ }
+ },
+ "browserify": {
+ "version": "16.5.1",
+ "resolved": "https://registry.npmjs.org/browserify/-/browserify-16.5.1.tgz",
+ "integrity": "sha512-EQX0h59Pp+0GtSRb5rL6OTfrttlzv+uyaUVlK6GX3w11SQ0jKPKyjC/54RhPR2ib2KmfcELM06e8FxcI5XNU2A==",
+ "dev": true,
+ "requires": {
+ "JSONStream": "^1.0.3",
+ "assert": "^1.4.0",
+ "browser-pack": "^6.0.1",
+ "browser-resolve": "^1.11.0",
+ "browserify-zlib": "~0.2.0",
+ "buffer": "~5.2.1",
+ "cached-path-relative": "^1.0.0",
+ "concat-stream": "^1.6.0",
+ "console-browserify": "^1.1.0",
+ "constants-browserify": "~1.0.0",
+ "crypto-browserify": "^3.0.0",
+ "defined": "^1.0.0",
+ "deps-sort": "^2.0.0",
+ "domain-browser": "^1.2.0",
+ "duplexer2": "~0.1.2",
+ "events": "^2.0.0",
+ "glob": "^7.1.0",
+ "has": "^1.0.0",
+ "htmlescape": "^1.1.0",
+ "https-browserify": "^1.0.0",
+ "inherits": "~2.0.1",
+ "insert-module-globals": "^7.0.0",
+ "labeled-stream-splicer": "^2.0.0",
+ "mkdirp-classic": "^0.5.2",
+ "module-deps": "^6.0.0",
+ "os-browserify": "~0.3.0",
+ "parents": "^1.0.1",
+ "path-browserify": "~0.0.0",
+ "process": "~0.11.0",
+ "punycode": "^1.3.2",
+ "querystring-es3": "~0.2.0",
+ "read-only-stream": "^2.0.0",
+ "readable-stream": "^2.0.2",
+ "resolve": "^1.1.4",
+ "shasum": "^1.0.0",
+ "shell-quote": "^1.6.1",
+ "stream-browserify": "^2.0.0",
+ "stream-http": "^3.0.0",
+ "string_decoder": "^1.1.1",
+ "subarg": "^1.0.0",
+ "syntax-error": "^1.1.1",
+ "through2": "^2.0.0",
+ "timers-browserify": "^1.0.1",
+ "tty-browserify": "0.0.1",
+ "url": "~0.11.0",
+ "util": "~0.10.1",
+ "vm-browserify": "^1.0.0",
+ "xtend": "^4.0.0"
+ }
+ },
+ "browserify-zlib": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz",
+ "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==",
+ "dev": true,
+ "requires": {
+ "pako": "~1.0.5"
+ }
+ },
+ "buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz",
+ "integrity": "sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==",
+ "dev": true,
+ "requires": {
+ "base64-js": "^1.0.2",
+ "ieee754": "^1.1.4"
+ }
+ },
+ "builtin-status-codes": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz",
+ "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=",
+ "dev": true
+ },
+ "combine-source-map": {
+ "version": "0.8.0",
+ "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.8.0.tgz",
+ "integrity": "sha1-pY0N8ELBhvz4IqjoAV9UUNLXmos=",
+ "dev": true,
+ "requires": {
+ "convert-source-map": "~1.1.0",
+ "inline-source-map": "~0.6.0",
+ "lodash.memoize": "~3.0.3",
+ "source-map": "~0.5.3"
+ }
+ },
+ "concat-stream": {
+ "version": "1.6.2",
+ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
+ "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
+ "dev": true,
+ "requires": {
+ "buffer-from": "^1.0.0",
+ "inherits": "^2.0.3",
+ "readable-stream": "^2.2.2",
+ "typedarray": "^0.0.6"
+ }
+ },
+ "constants-browserify": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz",
+ "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=",
+ "dev": true
+ },
+ "convert-source-map": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz",
+ "integrity": "sha1-SCnId+n+SbMWHzvzZziI4gRpmGA=",
+ "dev": true
+ },
+ "deps-sort": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/deps-sort/-/deps-sort-2.0.1.tgz",
+ "integrity": "sha512-1orqXQr5po+3KI6kQb9A4jnXT1PBwggGl2d7Sq2xsnOeI9GPcE/tGcF9UiSZtZBM7MukY4cAh7MemS6tZYipfw==",
+ "dev": true,
+ "requires": {
+ "JSONStream": "^1.0.3",
+ "shasum-object": "^1.0.0",
+ "subarg": "^1.0.0",
+ "through2": "^2.0.0"
+ }
+ },
+ "detective": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.0.tgz",
+ "integrity": "sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg==",
+ "dev": true,
+ "requires": {
+ "acorn-node": "^1.6.1",
+ "defined": "^1.0.0",
+ "minimist": "^1.1.1"
+ }
+ },
+ "domain-browser": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz",
+ "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==",
+ "dev": true
+ },
+ "duplexer2": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz",
+ "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=",
+ "dev": true,
+ "requires": {
+ "readable-stream": "^2.0.2"
+ }
+ },
+ "events": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/events/-/events-2.1.0.tgz",
+ "integrity": "sha512-3Zmiobend8P9DjmKAty0Era4jV8oJ0yGYe2nJJAxgymF9+N8F2m0hhZiMoWtcfepExzNKZumFU3ksdQbInGWCg==",
+ "dev": true
+ },
+ "glob": {
+ "version": "7.1.6",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
+ "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
+ "dev": true,
+ "requires": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ },
+ "https-browserify": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
+ "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=",
+ "dev": true
+ },
+ "inline-source-map": {
+ "version": "0.6.2",
+ "resolved": "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.2.tgz",
+ "integrity": "sha1-+Tk0ccGKedFyT4Y/o4tYY3Ct4qU=",
+ "dev": true,
+ "requires": {
+ "source-map": "~0.5.3"
+ }
+ },
+ "insert-module-globals": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.2.0.tgz",
+ "integrity": "sha512-VE6NlW+WGn2/AeOMd496AHFYmE7eLKkUY6Ty31k4og5vmA3Fjuwe9v6ifH6Xx/Hz27QvdoMoviw1/pqWRB09Sw==",
+ "dev": true,
+ "requires": {
+ "JSONStream": "^1.0.3",
+ "acorn-node": "^1.5.2",
+ "combine-source-map": "^0.8.0",
+ "concat-stream": "^1.6.1",
+ "is-buffer": "^1.1.0",
+ "path-is-absolute": "^1.0.1",
+ "process": "~0.11.0",
+ "through2": "^2.0.0",
+ "undeclared-identifiers": "^1.1.2",
+ "xtend": "^4.0.0"
+ }
+ },
+ "labeled-stream-splicer": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-2.0.2.tgz",
+ "integrity": "sha512-Ca4LSXFFZUjPScRaqOcFxneA0VpKZr4MMYCljyQr4LIewTLb3Y0IUTIsnBBsVubIeEfxeSZpSjSsRM8APEQaAw==",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.1",
+ "stream-splicer": "^2.0.0"
+ }
+ },
+ "module-deps": {
+ "version": "6.2.2",
+ "resolved": "https://registry.npmjs.org/module-deps/-/module-deps-6.2.2.tgz",
+ "integrity": "sha512-a9y6yDv5u5I4A+IPHTnqFxcaKr4p50/zxTjcQJaX2ws9tN/W6J6YXnEKhqRyPhl494dkcxx951onSKVezmI+3w==",
+ "dev": true,
+ "requires": {
+ "JSONStream": "^1.0.3",
+ "browser-resolve": "^1.7.0",
+ "cached-path-relative": "^1.0.2",
+ "concat-stream": "~1.6.0",
+ "defined": "^1.0.0",
+ "detective": "^5.2.0",
+ "duplexer2": "^0.1.2",
+ "inherits": "^2.0.1",
+ "parents": "^1.0.0",
+ "readable-stream": "^2.0.2",
+ "resolve": "^1.4.0",
+ "stream-combiner2": "^1.1.1",
+ "subarg": "^1.0.0",
+ "through2": "^2.0.0",
+ "xtend": "^4.0.0"
+ }
+ },
+ "os-browserify": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
+ "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=",
+ "dev": true
+ },
+ "pako": {
+ "version": "1.0.11",
+ "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",
+ "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==",
+ "dev": true
+ },
+ "read-only-stream": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/read-only-stream/-/read-only-stream-2.0.0.tgz",
+ "integrity": "sha1-JyT9aoET1zdkrCiNQ4YnDB2/F/A=",
+ "dev": true,
+ "requires": {
+ "readable-stream": "^2.0.2"
+ }
+ },
+ "shell-quote": {
+ "version": "1.7.2",
+ "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz",
+ "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==",
+ "dev": true
+ },
+ "stream-combiner2": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz",
+ "integrity": "sha1-+02KFCDqNidk4hrUeAOXvry0HL4=",
+ "dev": true,
+ "requires": {
+ "duplexer2": "~0.1.0",
+ "readable-stream": "^2.0.2"
+ }
+ },
+ "stream-http": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.1.0.tgz",
+ "integrity": "sha512-cuB6RgO7BqC4FBYzmnvhob5Do3wIdIsXAgGycHJnW+981gHqoYcYz9lqjJrk8WXRddbwPuqPYRl+bag6mYv4lw==",
+ "dev": true,
+ "requires": {
+ "builtin-status-codes": "^3.0.0",
+ "inherits": "^2.0.1",
+ "readable-stream": "^3.0.6",
+ "xtend": "^4.0.0"
+ },
+ "dependencies": {
+ "readable-stream": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
+ "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
+ }
+ }
+ }
+ },
+ "stream-splicer": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/stream-splicer/-/stream-splicer-2.0.1.tgz",
+ "integrity": "sha512-Xizh4/NPuYSyAXyT7g8IvdJ9HJpxIGL9PjyhtywCZvvP0OPIdqyrr4dMikeuvY8xahpdKEBlBTySe583totajg==",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.1",
+ "readable-stream": "^2.0.2"
+ }
+ },
+ "string_decoder": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
+ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
+ "dev": true,
+ "requires": {
+ "safe-buffer": "~5.2.0"
+ },
+ "dependencies": {
+ "safe-buffer": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz",
+ "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==",
+ "dev": true
+ }
+ }
+ },
+ "through2": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
+ "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
+ "dev": true,
+ "requires": {
+ "readable-stream": "~2.3.6",
+ "xtend": "~4.0.1"
+ }
+ },
+ "url": {
+ "version": "0.11.0",
+ "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz",
+ "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=",
+ "dev": true,
+ "requires": {
+ "punycode": "1.3.2",
+ "querystring": "0.2.0"
+ },
+ "dependencies": {
+ "punycode": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz",
+ "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=",
+ "dev": true
+ }
+ }
+ },
+ "vm-browserify": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz",
+ "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==",
+ "dev": true
+ }
+ }
+ },
+ "watchpack": {
+ "version": "0.2.9",
+ "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-0.2.9.tgz",
+ "integrity": "sha1-Yuqkq15bo1/fwBgnVibjwPXj+ws=",
+ "dev": true,
+ "requires": {
+ "async": "^0.9.0",
+ "chokidar": "^1.0.0",
+ "graceful-fs": "^4.1.2"
+ },
+ "dependencies": {
+ "async": {
+ "version": "0.9.2",
+ "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz",
+ "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=",
+ "dev": true
+ },
+ "chokidar": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz",
+ "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=",
+ "dev": true,
+ "requires": {
+ "anymatch": "^1.3.0",
+ "async-each": "^1.0.0",
+ "fsevents": "^1.0.0",
+ "glob-parent": "^2.0.0",
+ "inherits": "^2.0.1",
+ "is-binary-path": "^1.0.0",
+ "is-glob": "^2.0.0",
+ "path-is-absolute": "^1.0.0",
+ "readdirp": "^2.0.0"
+ }
+ },
+ "is-extglob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
+ "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=",
+ "dev": true
+ },
+ "is-glob": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
+ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^1.0.0"
+ }
+ }
+ }
+ },
+ "webidl-conversions": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz",
+ "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==",
+ "dev": true
+ },
+ "webpack": {
+ "version": "1.15.0",
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-1.15.0.tgz",
+ "integrity": "sha1-T/MfU9sDM55VFkqdRo7gMklo/pg=",
+ "dev": true,
+ "requires": {
+ "acorn": "^3.0.0",
+ "async": "^1.3.0",
+ "clone": "^1.0.2",
+ "enhanced-resolve": "~0.9.0",
+ "interpret": "^0.6.4",
+ "loader-utils": "^0.2.11",
+ "memory-fs": "~0.3.0",
+ "mkdirp": "~0.5.0",
+ "node-libs-browser": "^0.7.0",
+ "optimist": "~0.6.0",
+ "supports-color": "^3.1.0",
+ "tapable": "~0.1.8",
+ "uglify-js": "~2.7.3",
+ "watchpack": "^0.2.1",
+ "webpack-core": "~0.6.9"
+ },
+ "dependencies": {
+ "acorn": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz",
+ "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=",
+ "dev": true
+ },
+ "interpret": {
+ "version": "0.6.6",
+ "resolved": "https://registry.npmjs.org/interpret/-/interpret-0.6.6.tgz",
+ "integrity": "sha1-/s16GOfOXKar+5U+H4YhOknxYls=",
+ "dev": true
+ },
+ "supports-color": {
+ "version": "3.2.3",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz",
+ "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=",
+ "dev": true,
+ "requires": {
+ "has-flag": "^1.0.0"
+ }
+ },
+ "uglify-js": {
+ "version": "2.7.5",
+ "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.7.5.tgz",
+ "integrity": "sha1-RhLAx7qu4rp8SH3kkErhIgefLKg=",
+ "dev": true,
+ "requires": {
+ "async": "~0.2.6",
+ "source-map": "~0.5.1",
+ "uglify-to-browserify": "~1.0.0",
+ "yargs": "~3.10.0"
+ },
+ "dependencies": {
+ "async": {
+ "version": "0.2.10",
+ "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz",
+ "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=",
+ "dev": true
+ }
+ }
+ },
+ "window-size": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz",
+ "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=",
+ "dev": true
+ },
+ "yargs": {
+ "version": "3.10.0",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz",
+ "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=",
+ "dev": true,
+ "requires": {
+ "camelcase": "^1.0.2",
+ "cliui": "^2.1.0",
+ "decamelize": "^1.0.0",
+ "window-size": "0.1.0"
+ }
+ }
+ }
+ },
+ "webpack-core": {
+ "version": "0.6.9",
+ "resolved": "https://registry.npmjs.org/webpack-core/-/webpack-core-0.6.9.tgz",
+ "integrity": "sha1-/FcViMhVjad76e+23r3Fo7FyvcI=",
+ "dev": true,
+ "requires": {
+ "source-list-map": "~0.1.7",
+ "source-map": "~0.4.1"
+ },
+ "dependencies": {
+ "source-map": {
+ "version": "0.4.4",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
+ "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
+ "dev": true,
+ "requires": {
+ "amdefine": ">=0.0.4"
+ }
+ }
+ }
+ },
+ "webpack-dev-middleware": {
+ "version": "1.12.2",
+ "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-1.12.2.tgz",
+ "integrity": "sha512-FCrqPy1yy/sN6U/SaEZcHKRXGlqU0DUaEBL45jkUYoB8foVb6wCnbIJ1HKIx+qUFTW+3JpVcCJCxZ8VATL4e+A==",
+ "dev": true,
+ "requires": {
+ "memory-fs": "~0.4.1",
+ "mime": "^1.5.0",
+ "path-is-absolute": "^1.0.0",
+ "range-parser": "^1.0.3",
+ "time-stamp": "^2.0.0"
+ },
+ "dependencies": {
+ "memory-fs": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz",
+ "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=",
+ "dev": true,
+ "requires": {
+ "errno": "^0.1.3",
+ "readable-stream": "^2.0.1"
+ }
+ },
+ "time-stamp": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-2.2.0.tgz",
+ "integrity": "sha512-zxke8goJQpBeEgD82CXABeMh0LSJcj7CXEd0OHOg45HgcofF7pxNwZm9+RknpxpDhwN4gFpySkApKfFYfRQnUA==",
+ "dev": true
+ }
+ }
+ },
+ "webpack-dev-server": {
+ "version": "1.16.5",
+ "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-1.16.5.tgz",
+ "integrity": "sha1-DL1fLSrI1OWTqs1clwLnu9XlmJI=",
+ "dev": true,
+ "requires": {
+ "compression": "^1.5.2",
+ "connect-history-api-fallback": "^1.3.0",
+ "express": "^4.13.3",
+ "http-proxy-middleware": "~0.17.1",
+ "open": "0.0.5",
+ "optimist": "~0.6.1",
+ "serve-index": "^1.7.2",
+ "sockjs": "^0.3.15",
+ "sockjs-client": "^1.0.3",
+ "stream-cache": "~0.0.1",
+ "strip-ansi": "^3.0.0",
+ "supports-color": "^3.1.1",
+ "webpack-dev-middleware": "^1.10.2"
+ },
+ "dependencies": {
+ "supports-color": {
+ "version": "3.2.3",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz",
+ "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=",
+ "dev": true,
+ "requires": {
+ "has-flag": "^1.0.0"
+ }
+ }
+ }
+ },
+ "websocket-driver": {
+ "version": "0.6.5",
+ "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.6.5.tgz",
+ "integrity": "sha1-XLJVbOuF9Dc8bYI4qmkchFThOjY=",
+ "dev": true,
+ "requires": {
+ "websocket-extensions": ">=0.1.1"
+ }
+ },
+ "websocket-extensions": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz",
+ "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==",
+ "dev": true
+ },
+ "whatwg-encoding": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz",
+ "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==",
+ "dev": true,
+ "requires": {
+ "iconv-lite": "0.4.24"
+ }
+ },
+ "whatwg-fetch": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz",
+ "integrity": "sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q==",
+ "dev": true
+ },
+ "whatwg-url": {
+ "version": "4.8.0",
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-4.8.0.tgz",
+ "integrity": "sha1-0pgaqRSMHgCkHFphMRZqtGg7vMA=",
+ "dev": true,
+ "requires": {
+ "tr46": "~0.0.3",
+ "webidl-conversions": "^3.0.0"
+ },
+ "dependencies": {
+ "webidl-conversions": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
+ "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=",
+ "dev": true
+ }
+ }
+ },
+ "whet.extend": {
+ "version": "0.9.9",
+ "resolved": "https://registry.npmjs.org/whet.extend/-/whet.extend-0.9.9.tgz",
+ "integrity": "sha1-+HfVv2SMl+WqVC+twW1qJZucEaE=",
+ "dev": true
+ },
+ "which": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
+ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
+ "dev": true,
+ "requires": {
+ "isexe": "^2.0.0"
+ }
+ },
+ "which-module": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz",
+ "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=",
+ "dev": true
+ },
+ "window-size": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.4.tgz",
+ "integrity": "sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY=",
+ "dev": true
+ },
+ "word-wrap": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
+ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
+ "dev": true
+ },
+ "wordwrap": {
+ "version": "0.0.2",
+ "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
+ "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=",
+ "dev": true
+ },
+ "worker-farm": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz",
+ "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==",
+ "dev": true,
+ "requires": {
+ "errno": "~0.1.7"
+ }
+ },
+ "wrap-ansi": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
+ "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
+ "dev": true,
+ "requires": {
+ "string-width": "^1.0.1",
+ "strip-ansi": "^3.0.1"
+ }
+ },
+ "wrappy": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
+ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
+ "dev": true
+ },
+ "write": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz",
+ "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=",
+ "dev": true,
+ "requires": {
+ "mkdirp": "^0.5.1"
+ }
+ },
+ "xml-escape": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/xml-escape/-/xml-escape-1.0.0.tgz",
+ "integrity": "sha1-AJY9aXsq3wwYXE4E5zF0upsojrI=",
+ "dev": true
+ },
+ "xml-name-validator": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-2.0.1.tgz",
+ "integrity": "sha1-TYuPHszTQZqjYgYb7O9RXh5VljU=",
+ "dev": true
+ },
+ "xtend": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
+ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
+ "dev": true
+ },
+ "y18n": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz",
+ "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=",
+ "dev": true
+ },
+ "yargs": {
+ "version": "3.27.0",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.27.0.tgz",
+ "integrity": "sha1-ISBUaTFuk5Ex1Z8toMbX+YIh6kA=",
+ "dev": true,
+ "requires": {
+ "camelcase": "^1.2.1",
+ "cliui": "^2.1.0",
+ "decamelize": "^1.0.0",
+ "os-locale": "^1.4.0",
+ "window-size": "^0.1.2",
+ "y18n": "^3.2.0"
+ }
+ },
+ "yargs-parser": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz",
+ "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=",
+ "dev": true,
+ "requires": {
+ "camelcase": "^3.0.0"
+ },
+ "dependencies": {
+ "camelcase": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz",
+ "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=",
+ "dev": true
+ }
+ }
+ }
+ }
+}
diff --git a/src/BootstrapTable.js b/src/BootstrapTable.js
index 1e7c07146..29de58d57 100644
--- a/src/BootstrapTable.js
+++ b/src/BootstrapTable.js
@@ -252,7 +252,9 @@ class BootstrapTable extends Component {
});
}
- componentWillReceiveProps(nextProps) {
+ /* eslint-disable */
+ UNSAFE_componentWillReceiveProps(nextProps) {
+ /* eslint-enable */
this.initTable(nextProps);
const { options, selectRow } = nextProps;
let { replace } = nextProps;
@@ -355,6 +357,16 @@ class BootstrapTable extends Component {
};
});
}
+
+ if (selectRow && selectRow.mode !== 'none' && this.state.y !== 0) {
+ // If user switched to select row, reset the focus to the first cell
+ this.setState(() => {
+ return {
+ y: 0,
+ x: 0
+ };
+ });
+ }
} else {
this.reset();
}
@@ -709,12 +721,22 @@ class BootstrapTable extends Component {
handleNavigateCell = ({ x: offSetX, y: offSetY, lastEditCell }) => {
const { pagination } = this.props;
let { x, y, currPage } = this.state;
- x += offSetX;
- y += offSetY;
const columns = this.store.getColInfos();
+ const visibleColumnIndices = Object.keys(columns).map((k, index) => columns[k].hidden ? -1 : index).filter(k => k !== -1);
+
+ if (visibleColumnIndices.indexOf(x) === 0 && offSetX < 0) {
+ x = -1;
+ } else if ((visibleColumnIndices.indexOf(x) === (visibleColumnIndices.length - 1) && offSetX >= 1)) {
+ x = Object.keys(columns).length;
+ } else {
+ x = visibleColumnIndices[visibleColumnIndices.indexOf(x) + offSetX];
+ }
+ y += offSetY;
+
const visibleRowSize = this.state.data.length;
const visibleColumnSize = Object.keys(columns).filter(k => !columns[k].hidden).length;
+ const hiddenColumnSize = Object.keys(columns).filter(k => columns[k].hidden).length;
if (y >= visibleRowSize) {
currPage++;
@@ -733,7 +755,7 @@ class BootstrapTable extends Component {
return;
}
y = visibleRowSize - 1;
- } else if (x >= visibleColumnSize) {
+ } else if (x - hiddenColumnSize >= visibleColumnSize) {
if ((y + 1) === visibleRowSize) {
currPage++;
const lastPage = pagination ? this.pagination.getLastPage() : -1;
@@ -746,9 +768,9 @@ class BootstrapTable extends Component {
} else {
y++;
}
- x = lastEditCell ? 1 : 0;
+ x = lastEditCell ? visibleColumnIndices[1] : visibleColumnIndices[0];
} else if (x < 0) {
- x = visibleColumnSize - 1;
+ x = visibleColumnIndices[visibleColumnIndices.length - 1];
if (y === 0) {
currPage--;
if (currPage > 0) {
diff --git a/src/TableColumn.js b/src/TableColumn.js
index 27018ac30..a60b6018f 100644
--- a/src/TableColumn.js
+++ b/src/TableColumn.js
@@ -51,7 +51,7 @@ class TableColumn extends Component {
componentDidMount() {
const dom = ReactDOM.findDOMNode(this);
- if (this.props.isFocus) {
+ if (this.props.isFocus && this.props.keyBoardNav) {
dom.focus();
} else {
dom.blur();
@@ -60,7 +60,7 @@ class TableColumn extends Component {
componentDidUpdate() {
const dom = ReactDOM.findDOMNode(this);
- if (this.props.isFocus) {
+ if (this.props.isFocus && this.props.keyBoardNav) {
dom.focus();
} else {
dom.blur();
diff --git a/src/TableHeader.js b/src/TableHeader.js
index a495db98d..aee61e8ef 100644
--- a/src/TableHeader.js
+++ b/src/TableHeader.js
@@ -9,7 +9,9 @@ import Utils from './util';
class Checkbox extends Component {
componentDidMount() { this.update(this.props.checked); }
- componentWillReceiveProps(props) { this.update(props.checked); }
+ /* eslint-disable */
+ UNSAFE_componentWillReceiveProps(props) { this.update(props.checked); }
+ /* eslint-enable */
update(checked) {
ReactDOM.findDOMNode(this).indeterminate = checked === 'indeterminate';
}
diff --git a/src/TableHeaderColumn.js b/src/TableHeaderColumn.js
index 753b03bdd..3ec060c90 100644
--- a/src/TableHeaderColumn.js
+++ b/src/TableHeaderColumn.js
@@ -18,7 +18,9 @@ class TableHeaderColumn extends Component {
this.handleFilter = this.handleFilter.bind(this);
}
- componentWillReceiveProps(nextProps) {
+ /* eslint-disable */
+ UNSAFE_componentWillReceiveProps(nextProps) {
+ /* eslint-enable */
if (nextProps.reset) {
this.cleanFiltered();
}
diff --git a/src/filters/Select.js b/src/filters/Select.js
index 30a0f8695..a4eace887 100644
--- a/src/filters/Select.js
+++ b/src/filters/Select.js
@@ -23,7 +23,9 @@ class SelectFilter extends Component {
};
}
- componentWillReceiveProps() {
+ /* eslint-disable */
+ UNSAFE_componentWillReceiveProps() {
+ /* eslint-enable */
const currentSelectValue = this.selectInput.value;
const isPlaceholderSelected = !currentSelectValue || currentSelectValue === '';
this.setState(() => {
diff --git a/src/filters/Text.js b/src/filters/Text.js
index b7225fb7f..f91e4f456 100644
--- a/src/filters/Text.js
+++ b/src/filters/Text.js
@@ -41,7 +41,9 @@ class TextFilter extends Component {
}
}
- componentWillReceiveProps(nextProps) {
+ /* eslint-disable */
+ UNSAFE_componentWillReceiveProps(nextProps) {
+ /* eslint-enable */
if (nextProps.defaultValue !== this.props.defaultValue) {
this.applyFilter(nextProps.defaultValue || '');
}
diff --git a/src/pagination/PaginationList.js b/src/pagination/PaginationList.js
index 4c10e8c20..f16e47f5b 100644
--- a/src/pagination/PaginationList.js
+++ b/src/pagination/PaginationList.js
@@ -15,7 +15,9 @@ class PaginationList extends Component {
};
}
- componentWillReceiveProps() {
+ /* eslint-disable */
+ UNSAFE_componentWillReceiveProps() {
+ /* eslint-enable */
const { keepSizePerPageState } = this.props;
if (!keepSizePerPageState) {
this.closeDropDown();
diff --git a/src/toolbar/ToolBar.js b/src/toolbar/ToolBar.js
index 3b2f8d3eb..e6621219f 100644
--- a/src/toolbar/ToolBar.js
+++ b/src/toolbar/ToolBar.js
@@ -31,7 +31,9 @@ class ToolBar extends Component {
};
}
- componentWillMount() {
+ /* eslint-disable */
+ UNSAFE_componentWillMount() {
+ /* eslint-enable */
const delay = this.props.searchDelayTime ? this.props.searchDelayTime : 0;
this.debounceCallback = this.handleDebounce(() => {
this.seachInput && this.props.onSearch(this.seachInput.getValue());
@@ -40,7 +42,9 @@ class ToolBar extends Component {
);
}
- componentWillReceiveProps(nextProps) {
+ /* eslint-disable */
+ UNSAFE_componentWillReceiveProps(nextProps) {
+ /* eslint-enable */
if (nextProps.reset) {
this.setSearchInput('');
}
diff --git a/yarn.lock b/yarn.lock
deleted file mode 100644
index 4ed6f5e92..000000000
--- a/yarn.lock
+++ /dev/null
@@ -1,7746 +0,0 @@
-# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
-# yarn lockfile v1
-
-
-JSONStream@^1.0.3:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.1.tgz#707f761e01dae9e16f1bcf93703b78c70966579a"
- dependencies:
- jsonparse "^1.2.0"
- through ">=2.2.7 <3"
-
-abab@^1.0.3:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.4.tgz#5faad9c2c07f60dd76770f71cf025b62a63cfd4e"
-
-abbrev@1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8"
-
-accepts@~1.3.4:
- version "1.3.4"
- resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.4.tgz#86246758c7dd6d21a6474ff084a4740ec05eb21f"
- dependencies:
- mime-types "~2.1.16"
- negotiator "0.6.1"
-
-acorn-globals@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-3.1.0.tgz#fd8270f71fbb4996b004fa880ee5d46573a731bf"
- dependencies:
- acorn "^4.0.4"
-
-acorn@^3.0.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a"
-
-acorn@^4.0.3, acorn@^4.0.4:
- version "4.0.13"
- resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.13.tgz#105495ae5361d697bd195c825192e1ad7f253787"
-
-acorn@^5.2.1:
- version "5.2.1"
- resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.2.1.tgz#317ac7821826c22c702d66189ab8359675f135d7"
-
-ajv@^4.9.1:
- version "4.11.8"
- resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536"
- dependencies:
- co "^4.6.0"
- json-stable-stringify "^1.0.1"
-
-ajv@^5.1.0:
- version "5.5.1"
- resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.1.tgz#b38bb8876d9e86bee994956a04e721e88b248eb2"
- dependencies:
- co "^4.6.0"
- fast-deep-equal "^1.0.0"
- fast-json-stable-stringify "^2.0.0"
- json-schema-traverse "^0.3.0"
-
-align-text@^0.1.1, align-text@^0.1.3:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117"
- dependencies:
- kind-of "^3.0.2"
- longest "^1.0.1"
- repeat-string "^1.5.2"
-
-alphanum-sort@^1.0.1, alphanum-sort@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3"
-
-alter@~0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/alter/-/alter-0.2.0.tgz#c7588808617572034aae62480af26b1d4d1cb3cd"
- dependencies:
- stable "~0.1.3"
-
-amdefine@>=0.0.4:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5"
-
-ansi-escapes@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e"
-
-ansi-gray@^0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/ansi-gray/-/ansi-gray-0.1.1.tgz#2962cf54ec9792c48510a3deb524436861ef7251"
- dependencies:
- ansi-wrap "0.1.0"
-
-ansi-regex@^0.2.0, ansi-regex@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-0.2.1.tgz#0d8e946967a3d8143f93e24e298525fc1b2235f9"
-
-ansi-regex@^1.0.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-1.1.1.tgz#41c847194646375e6a1a5d10c3ca054ef9fc980d"
-
-ansi-regex@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
-
-ansi-styles@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-1.1.0.tgz#eaecbf66cd706882760b2f4691582b8f55d7a7de"
-
-ansi-styles@^2.2.1:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
-
-ansi-styles@^3.0.0, ansi-styles@^3.1.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88"
- dependencies:
- color-convert "^1.9.0"
-
-ansi-wrap@0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/ansi-wrap/-/ansi-wrap-0.1.0.tgz#a82250ddb0015e9a27ca82e82ea603bbfa45efaf"
-
-anymatch@^1.3.0:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.2.tgz#553dcb8f91e3c889845dfdba34c77721b90b9d7a"
- dependencies:
- micromatch "^2.1.5"
- normalize-path "^2.0.0"
-
-append-transform@^0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-0.4.0.tgz#d76ebf8ca94d276e247a36bad44a4b74ab611991"
- dependencies:
- default-require-extensions "^1.0.0"
-
-aproba@^1.0.3:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a"
-
-archy@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40"
-
-are-we-there-yet@~1.1.2:
- version "1.1.4"
- resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d"
- dependencies:
- delegates "^1.0.0"
- readable-stream "^2.0.6"
-
-argparse@^1.0.7:
- version "1.0.9"
- resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86"
- dependencies:
- sprintf-js "~1.0.2"
-
-arr-diff@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf"
- dependencies:
- arr-flatten "^1.0.1"
-
-arr-flatten@^1.0.1:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1"
-
-array-differ@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031"
-
-array-each@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/array-each/-/array-each-1.0.1.tgz#a794af0c05ab1752846ee753a1f211a05ba0c44f"
-
-array-equal@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93"
-
-array-filter@~0.0.0:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec"
-
-array-find-index@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1"
-
-array-flatten@1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2"
-
-array-map@~0.0.0:
- version "0.0.0"
- resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662"
-
-array-reduce@~0.0.0:
- version "0.0.0"
- resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b"
-
-array-slice@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/array-slice/-/array-slice-1.1.0.tgz#e368ea15f89bc7069f7ffb89aec3a6c7d4ac22d4"
-
-array-union@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39"
- dependencies:
- array-uniq "^1.0.1"
-
-array-uniq@^1.0.1, array-uniq@^1.0.2:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6"
-
-array-unique@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53"
-
-arrify@^1.0.0, arrify@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
-
-asap@~2.0.3:
- version "2.0.6"
- resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46"
-
-asn1.js@^4.0.0:
- version "4.9.2"
- resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.9.2.tgz#8117ef4f7ed87cd8f89044b5bff97ac243a16c9a"
- dependencies:
- bn.js "^4.0.0"
- inherits "^2.0.1"
- minimalistic-assert "^1.0.0"
-
-asn1@~0.2.3:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86"
-
-assert-plus@1.0.0, assert-plus@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"
-
-assert-plus@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234"
-
-assert@^1.1.1, assert@^1.4.0:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91"
- dependencies:
- util "0.10.3"
-
-assert@~1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/assert/-/assert-1.3.0.tgz#03939a622582a812cc202320a0b9a56c9b815849"
- dependencies:
- util "0.10.3"
-
-ast-traverse@~0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/ast-traverse/-/ast-traverse-0.1.1.tgz#69cf2b8386f19dcda1bb1e05d68fe359d8897de6"
-
-ast-types@0.8.12:
- version "0.8.12"
- resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.8.12.tgz#a0d90e4351bb887716c83fd637ebf818af4adfcc"
-
-ast-types@0.8.15:
- version "0.8.15"
- resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.8.15.tgz#8eef0827f04dff0ec8857ba925abe3fea6194e52"
-
-ast-types@0.9.6:
- version "0.9.6"
- resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.9.6.tgz#102c9e9e9005d3e7e3829bf0c4fa24ee862ee9b9"
-
-astw@^2.0.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/astw/-/astw-2.2.0.tgz#7bd41784d32493987aeb239b6b4e1c57a873b917"
- dependencies:
- acorn "^4.0.3"
-
-async-each@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d"
-
-async@^0.9.0:
- version "0.9.2"
- resolved "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz#aea74d5e61c1f899613bf64bda66d4c78f2fd17d"
-
-async@^1.2.1, async@^1.3.0, async@^1.4.0, async@^1.5.0:
- version "1.5.2"
- resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a"
-
-async@^2.1.4:
- version "2.6.0"
- resolved "https://registry.yarnpkg.com/async/-/async-2.6.0.tgz#61a29abb6fcc026fea77e56d1c6ec53a795951f4"
- dependencies:
- lodash "^4.14.0"
-
-async@~0.2.6:
- version "0.2.10"
- resolved "https://registry.yarnpkg.com/async/-/async-0.2.10.tgz#b6bbe0b0674b9d719708ca38de8c237cb526c3d1"
-
-asynckit@^0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
-
-atob@~1.1.0:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/atob/-/atob-1.1.3.tgz#95f13629b12c3a51a5d215abdce2aa9f32f80773"
-
-autoprefixer@^6.3.1:
- version "6.7.7"
- resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-6.7.7.tgz#1dbd1c835658e35ce3f9984099db00585c782014"
- dependencies:
- browserslist "^1.7.6"
- caniuse-db "^1.0.30000634"
- normalize-range "^0.1.2"
- num2fraction "^1.2.2"
- postcss "^5.2.16"
- postcss-value-parser "^3.2.3"
-
-aws-sign2@~0.6.0:
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f"
-
-aws-sign2@~0.7.0:
- version "0.7.0"
- resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8"
-
-aws4@^1.2.1, aws4@^1.6.0:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e"
-
-babel-code-frame@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b"
- dependencies:
- chalk "^1.1.3"
- esutils "^2.0.2"
- js-tokens "^3.0.2"
-
-babel-core@^5.0.0:
- version "5.8.38"
- resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-5.8.38.tgz#1fcaee79d7e61b750b00b8e54f6dfc9d0af86558"
- dependencies:
- babel-plugin-constant-folding "^1.0.1"
- babel-plugin-dead-code-elimination "^1.0.2"
- babel-plugin-eval "^1.0.1"
- babel-plugin-inline-environment-variables "^1.0.1"
- babel-plugin-jscript "^1.0.4"
- babel-plugin-member-expression-literals "^1.0.1"
- babel-plugin-property-literals "^1.0.1"
- babel-plugin-proto-to-assign "^1.0.3"
- babel-plugin-react-constant-elements "^1.0.3"
- babel-plugin-react-display-name "^1.0.3"
- babel-plugin-remove-console "^1.0.1"
- babel-plugin-remove-debugger "^1.0.1"
- babel-plugin-runtime "^1.0.7"
- babel-plugin-undeclared-variables-check "^1.0.2"
- babel-plugin-undefined-to-void "^1.1.6"
- babylon "^5.8.38"
- bluebird "^2.9.33"
- chalk "^1.0.0"
- convert-source-map "^1.1.0"
- core-js "^1.0.0"
- debug "^2.1.1"
- detect-indent "^3.0.0"
- esutils "^2.0.0"
- fs-readdir-recursive "^0.1.0"
- globals "^6.4.0"
- home-or-tmp "^1.0.0"
- is-integer "^1.0.4"
- js-tokens "1.0.1"
- json5 "^0.4.0"
- lodash "^3.10.0"
- minimatch "^2.0.3"
- output-file-sync "^1.1.0"
- path-exists "^1.0.0"
- path-is-absolute "^1.0.0"
- private "^0.1.6"
- regenerator "0.8.40"
- regexpu "^1.3.0"
- repeating "^1.1.2"
- resolve "^1.1.6"
- shebang-regex "^1.0.0"
- slash "^1.0.0"
- source-map "^0.5.0"
- source-map-support "^0.2.10"
- to-fast-properties "^1.0.0"
- trim-right "^1.0.0"
- try-resolve "^1.0.0"
-
-babel-core@^6.0.0, babel-core@^6.0.2, babel-core@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.0.tgz#af32f78b31a6fcef119c87b0fd8d9753f03a0bb8"
- dependencies:
- babel-code-frame "^6.26.0"
- babel-generator "^6.26.0"
- babel-helpers "^6.24.1"
- babel-messages "^6.23.0"
- babel-register "^6.26.0"
- babel-runtime "^6.26.0"
- babel-template "^6.26.0"
- babel-traverse "^6.26.0"
- babel-types "^6.26.0"
- babylon "^6.18.0"
- convert-source-map "^1.5.0"
- debug "^2.6.8"
- json5 "^0.5.1"
- lodash "^4.17.4"
- minimatch "^3.0.4"
- path-is-absolute "^1.0.1"
- private "^0.1.7"
- slash "^1.0.0"
- source-map "^0.5.6"
-
-babel-eslint@^6.0.0:
- version "6.1.2"
- resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-6.1.2.tgz#5293419fe3672d66598d327da9694567ba6a5f2f"
- dependencies:
- babel-traverse "^6.0.20"
- babel-types "^6.0.19"
- babylon "^6.0.18"
- lodash.assign "^4.0.0"
- lodash.pickby "^4.0.0"
-
-babel-generator@^6.18.0, babel-generator@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5"
- dependencies:
- babel-messages "^6.23.0"
- babel-runtime "^6.26.0"
- babel-types "^6.26.0"
- detect-indent "^4.0.0"
- jsesc "^1.3.0"
- lodash "^4.17.4"
- source-map "^0.5.6"
- trim-right "^1.0.1"
-
-babel-helper-bindify-decorators@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz#14c19e5f142d7b47f19a52431e52b1ccbc40a330"
- dependencies:
- babel-runtime "^6.22.0"
- babel-traverse "^6.24.1"
- babel-types "^6.24.1"
-
-babel-helper-builder-binary-assignment-operator-visitor@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664"
- dependencies:
- babel-helper-explode-assignable-expression "^6.24.1"
- babel-runtime "^6.22.0"
- babel-types "^6.24.1"
-
-babel-helper-builder-react-jsx@^6.24.1:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.26.0.tgz#39ff8313b75c8b65dceff1f31d383e0ff2a408a0"
- dependencies:
- babel-runtime "^6.26.0"
- babel-types "^6.26.0"
- esutils "^2.0.2"
-
-babel-helper-call-delegate@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d"
- dependencies:
- babel-helper-hoist-variables "^6.24.1"
- babel-runtime "^6.22.0"
- babel-traverse "^6.24.1"
- babel-types "^6.24.1"
-
-babel-helper-define-map@^6.24.1:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz#a5f56dab41a25f97ecb498c7ebaca9819f95be5f"
- dependencies:
- babel-helper-function-name "^6.24.1"
- babel-runtime "^6.26.0"
- babel-types "^6.26.0"
- lodash "^4.17.4"
-
-babel-helper-explode-assignable-expression@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa"
- dependencies:
- babel-runtime "^6.22.0"
- babel-traverse "^6.24.1"
- babel-types "^6.24.1"
-
-babel-helper-explode-class@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz#7dc2a3910dee007056e1e31d640ced3d54eaa9eb"
- dependencies:
- babel-helper-bindify-decorators "^6.24.1"
- babel-runtime "^6.22.0"
- babel-traverse "^6.24.1"
- babel-types "^6.24.1"
-
-babel-helper-function-name@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9"
- dependencies:
- babel-helper-get-function-arity "^6.24.1"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
- babel-traverse "^6.24.1"
- babel-types "^6.24.1"
-
-babel-helper-get-function-arity@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d"
- dependencies:
- babel-runtime "^6.22.0"
- babel-types "^6.24.1"
-
-babel-helper-hoist-variables@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76"
- dependencies:
- babel-runtime "^6.22.0"
- babel-types "^6.24.1"
-
-babel-helper-optimise-call-expression@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257"
- dependencies:
- babel-runtime "^6.22.0"
- babel-types "^6.24.1"
-
-babel-helper-regex@^6.24.1:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72"
- dependencies:
- babel-runtime "^6.26.0"
- babel-types "^6.26.0"
- lodash "^4.17.4"
-
-babel-helper-remap-async-to-generator@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b"
- dependencies:
- babel-helper-function-name "^6.24.1"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
- babel-traverse "^6.24.1"
- babel-types "^6.24.1"
-
-babel-helper-replace-supers@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a"
- dependencies:
- babel-helper-optimise-call-expression "^6.24.1"
- babel-messages "^6.23.0"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
- babel-traverse "^6.24.1"
- babel-types "^6.24.1"
-
-babel-helpers@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2"
- dependencies:
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
-
-babel-jest@^19.0.0:
- version "19.0.0"
- resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-19.0.0.tgz#59323ced99a3a84d359da219ca881074ffc6ce3f"
- dependencies:
- babel-core "^6.0.0"
- babel-plugin-istanbul "^4.0.0"
- babel-preset-jest "^19.0.0"
-
-babel-loader@^6.0.0:
- version "6.4.1"
- resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-6.4.1.tgz#0b34112d5b0748a8dcdbf51acf6f9bd42d50b8ca"
- dependencies:
- find-cache-dir "^0.1.1"
- loader-utils "^0.2.16"
- mkdirp "^0.5.1"
- object-assign "^4.0.1"
-
-babel-messages@^6.23.0:
- version "6.23.0"
- resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e"
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-check-es2015-constants@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a"
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-constant-folding@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-constant-folding/-/babel-plugin-constant-folding-1.0.1.tgz#8361d364c98e449c3692bdba51eff0844290aa8e"
-
-babel-plugin-dead-code-elimination@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/babel-plugin-dead-code-elimination/-/babel-plugin-dead-code-elimination-1.0.2.tgz#5f7c451274dcd7cccdbfbb3e0b85dd28121f0f65"
-
-babel-plugin-eval@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-eval/-/babel-plugin-eval-1.0.1.tgz#a2faed25ce6be69ade4bfec263f70169195950da"
-
-babel-plugin-inline-environment-variables@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-inline-environment-variables/-/babel-plugin-inline-environment-variables-1.0.1.tgz#1f58ce91207ad6a826a8bf645fafe68ff5fe3ffe"
-
-babel-plugin-istanbul@^4.0.0:
- version "4.1.5"
- resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-4.1.5.tgz#6760cdd977f411d3e175bb064f2bc327d99b2b6e"
- dependencies:
- find-up "^2.1.0"
- istanbul-lib-instrument "^1.7.5"
- test-exclude "^4.1.1"
-
-babel-plugin-jest-hoist@^19.0.0:
- version "19.0.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-19.0.0.tgz#4ae2a04ea612a6e73651f3fde52c178991304bea"
-
-babel-plugin-jscript@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/babel-plugin-jscript/-/babel-plugin-jscript-1.0.4.tgz#8f342c38276e87a47d5fa0a8bd3d5eb6ccad8fcc"
-
-babel-plugin-member-expression-literals@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-member-expression-literals/-/babel-plugin-member-expression-literals-1.0.1.tgz#cc5edb0faa8dc927170e74d6d1c02440021624d3"
-
-babel-plugin-property-literals@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-property-literals/-/babel-plugin-property-literals-1.0.1.tgz#0252301900192980b1c118efea48ce93aab83336"
-
-babel-plugin-proto-to-assign@^1.0.3:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/babel-plugin-proto-to-assign/-/babel-plugin-proto-to-assign-1.0.4.tgz#c49e7afd02f577bc4da05ea2df002250cf7cd123"
- dependencies:
- lodash "^3.9.3"
-
-babel-plugin-react-constant-elements@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/babel-plugin-react-constant-elements/-/babel-plugin-react-constant-elements-1.0.3.tgz#946736e8378429cbc349dcff62f51c143b34e35a"
-
-babel-plugin-react-display-name@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/babel-plugin-react-display-name/-/babel-plugin-react-display-name-1.0.3.tgz#754fe38926e8424a4e7b15ab6ea6139dee0514fc"
-
-babel-plugin-remove-console@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-remove-console/-/babel-plugin-remove-console-1.0.1.tgz#d8f24556c3a05005d42aaaafd27787f53ff013a7"
-
-babel-plugin-remove-debugger@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-remove-debugger/-/babel-plugin-remove-debugger-1.0.1.tgz#fd2ea3cd61a428ad1f3b9c89882ff4293e8c14c7"
-
-babel-plugin-runtime@^1.0.7:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/babel-plugin-runtime/-/babel-plugin-runtime-1.0.7.tgz#bf7c7d966dd56ecd5c17fa1cb253c9acb7e54aaf"
-
-babel-plugin-syntax-async-functions@^6.8.0:
- version "6.13.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95"
-
-babel-plugin-syntax-async-generators@^6.5.0:
- version "6.13.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz#6bc963ebb16eccbae6b92b596eb7f35c342a8b9a"
-
-babel-plugin-syntax-class-constructor-call@^6.18.0:
- version "6.18.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz#9cb9d39fe43c8600bec8146456ddcbd4e1a76416"
-
-babel-plugin-syntax-class-properties@^6.8.0:
- version "6.13.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz#d7eb23b79a317f8543962c505b827c7d6cac27de"
-
-babel-plugin-syntax-decorators@^6.13.0:
- version "6.13.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz#312563b4dbde3cc806cee3e416cceeaddd11ac0b"
-
-babel-plugin-syntax-do-expressions@^6.8.0:
- version "6.13.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-6.13.0.tgz#5747756139aa26d390d09410b03744ba07e4796d"
-
-babel-plugin-syntax-dynamic-import@^6.18.0:
- version "6.18.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz#8d6a26229c83745a9982a441051572caa179b1da"
-
-babel-plugin-syntax-exponentiation-operator@^6.8.0:
- version "6.13.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de"
-
-babel-plugin-syntax-export-extensions@^6.8.0:
- version "6.13.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz#70a1484f0f9089a4e84ad44bac353c95b9b12721"
-
-babel-plugin-syntax-flow@^6.18.0:
- version "6.18.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz#4c3ab20a2af26aa20cd25995c398c4eb70310c8d"
-
-babel-plugin-syntax-function-bind@^6.8.0:
- version "6.13.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz#48c495f177bdf31a981e732f55adc0bdd2601f46"
-
-babel-plugin-syntax-jsx@^6.3.13, babel-plugin-syntax-jsx@^6.8.0:
- version "6.18.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946"
-
-babel-plugin-syntax-object-rest-spread@^6.8.0:
- version "6.13.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5"
-
-babel-plugin-syntax-trailing-function-commas@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3"
-
-babel-plugin-transform-async-generator-functions@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz#f058900145fd3e9907a6ddf28da59f215258a5db"
- dependencies:
- babel-helper-remap-async-to-generator "^6.24.1"
- babel-plugin-syntax-async-generators "^6.5.0"
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-async-to-generator@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761"
- dependencies:
- babel-helper-remap-async-to-generator "^6.24.1"
- babel-plugin-syntax-async-functions "^6.8.0"
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-class-constructor-call@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.24.1.tgz#80dc285505ac067dcb8d6c65e2f6f11ab7765ef9"
- dependencies:
- babel-plugin-syntax-class-constructor-call "^6.18.0"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
-
-babel-plugin-transform-class-properties@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz#6a79763ea61d33d36f37b611aa9def81a81b46ac"
- dependencies:
- babel-helper-function-name "^6.24.1"
- babel-plugin-syntax-class-properties "^6.8.0"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
-
-babel-plugin-transform-decorators@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz#788013d8f8c6b5222bdf7b344390dfd77569e24d"
- dependencies:
- babel-helper-explode-class "^6.24.1"
- babel-plugin-syntax-decorators "^6.13.0"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
- babel-types "^6.24.1"
-
-babel-plugin-transform-do-expressions@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-do-expressions/-/babel-plugin-transform-do-expressions-6.22.0.tgz#28ccaf92812d949c2cd1281f690c8fdc468ae9bb"
- dependencies:
- babel-plugin-syntax-do-expressions "^6.8.0"
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-arrow-functions@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221"
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-block-scoped-functions@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141"
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-block-scoping@^6.24.1:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz#d70f5299c1308d05c12f463813b0a09e73b1895f"
- dependencies:
- babel-runtime "^6.26.0"
- babel-template "^6.26.0"
- babel-traverse "^6.26.0"
- babel-types "^6.26.0"
- lodash "^4.17.4"
-
-babel-plugin-transform-es2015-classes@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db"
- dependencies:
- babel-helper-define-map "^6.24.1"
- babel-helper-function-name "^6.24.1"
- babel-helper-optimise-call-expression "^6.24.1"
- babel-helper-replace-supers "^6.24.1"
- babel-messages "^6.23.0"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
- babel-traverse "^6.24.1"
- babel-types "^6.24.1"
-
-babel-plugin-transform-es2015-computed-properties@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3"
- dependencies:
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
-
-babel-plugin-transform-es2015-destructuring@^6.22.0:
- version "6.23.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d"
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-duplicate-keys@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e"
- dependencies:
- babel-runtime "^6.22.0"
- babel-types "^6.24.1"
-
-babel-plugin-transform-es2015-for-of@^6.22.0:
- version "6.23.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691"
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-function-name@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b"
- dependencies:
- babel-helper-function-name "^6.24.1"
- babel-runtime "^6.22.0"
- babel-types "^6.24.1"
-
-babel-plugin-transform-es2015-literals@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e"
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-modules-amd@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154"
- dependencies:
- babel-plugin-transform-es2015-modules-commonjs "^6.24.1"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
-
-babel-plugin-transform-es2015-modules-commonjs@^6.24.1:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz#0d8394029b7dc6abe1a97ef181e00758dd2e5d8a"
- dependencies:
- babel-plugin-transform-strict-mode "^6.24.1"
- babel-runtime "^6.26.0"
- babel-template "^6.26.0"
- babel-types "^6.26.0"
-
-babel-plugin-transform-es2015-modules-systemjs@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23"
- dependencies:
- babel-helper-hoist-variables "^6.24.1"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
-
-babel-plugin-transform-es2015-modules-umd@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468"
- dependencies:
- babel-plugin-transform-es2015-modules-amd "^6.24.1"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
-
-babel-plugin-transform-es2015-object-super@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d"
- dependencies:
- babel-helper-replace-supers "^6.24.1"
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-parameters@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b"
- dependencies:
- babel-helper-call-delegate "^6.24.1"
- babel-helper-get-function-arity "^6.24.1"
- babel-runtime "^6.22.0"
- babel-template "^6.24.1"
- babel-traverse "^6.24.1"
- babel-types "^6.24.1"
-
-babel-plugin-transform-es2015-shorthand-properties@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0"
- dependencies:
- babel-runtime "^6.22.0"
- babel-types "^6.24.1"
-
-babel-plugin-transform-es2015-spread@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1"
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-sticky-regex@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc"
- dependencies:
- babel-helper-regex "^6.24.1"
- babel-runtime "^6.22.0"
- babel-types "^6.24.1"
-
-babel-plugin-transform-es2015-template-literals@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d"
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-typeof-symbol@^6.22.0:
- version "6.23.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372"
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-es2015-unicode-regex@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9"
- dependencies:
- babel-helper-regex "^6.24.1"
- babel-runtime "^6.22.0"
- regexpu-core "^2.0.0"
-
-babel-plugin-transform-exponentiation-operator@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e"
- dependencies:
- babel-helper-builder-binary-assignment-operator-visitor "^6.24.1"
- babel-plugin-syntax-exponentiation-operator "^6.8.0"
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-export-extensions@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz#53738b47e75e8218589eea946cbbd39109bbe653"
- dependencies:
- babel-plugin-syntax-export-extensions "^6.8.0"
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-flow-strip-types@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz#84cb672935d43714fdc32bce84568d87441cf7cf"
- dependencies:
- babel-plugin-syntax-flow "^6.18.0"
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-function-bind@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-6.22.0.tgz#c6fb8e96ac296a310b8cf8ea401462407ddf6a97"
- dependencies:
- babel-plugin-syntax-function-bind "^6.8.0"
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-object-rest-spread@^6.22.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz#0f36692d50fef6b7e2d4b3ac1478137a963b7b06"
- dependencies:
- babel-plugin-syntax-object-rest-spread "^6.8.0"
- babel-runtime "^6.26.0"
-
-babel-plugin-transform-react-display-name@^6.23.0:
- version "6.25.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.25.0.tgz#67e2bf1f1e9c93ab08db96792e05392bf2cc28d1"
- dependencies:
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-react-jsx-self@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx-self/-/babel-plugin-transform-react-jsx-self-6.22.0.tgz#df6d80a9da2612a121e6ddd7558bcbecf06e636e"
- dependencies:
- babel-plugin-syntax-jsx "^6.8.0"
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-react-jsx-source@^6.22.0:
- version "6.22.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.22.0.tgz#66ac12153f5cd2d17b3c19268f4bf0197f44ecd6"
- dependencies:
- babel-plugin-syntax-jsx "^6.8.0"
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-react-jsx@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.24.1.tgz#840a028e7df460dfc3a2d29f0c0d91f6376e66a3"
- dependencies:
- babel-helper-builder-react-jsx "^6.24.1"
- babel-plugin-syntax-jsx "^6.8.0"
- babel-runtime "^6.22.0"
-
-babel-plugin-transform-regenerator@^6.24.1:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f"
- dependencies:
- regenerator-transform "^0.10.0"
-
-babel-plugin-transform-strict-mode@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758"
- dependencies:
- babel-runtime "^6.22.0"
- babel-types "^6.24.1"
-
-babel-plugin-undeclared-variables-check@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/babel-plugin-undeclared-variables-check/-/babel-plugin-undeclared-variables-check-1.0.2.tgz#5cf1aa539d813ff64e99641290af620965f65dee"
- dependencies:
- leven "^1.0.2"
-
-babel-plugin-undefined-to-void@^1.1.6:
- version "1.1.6"
- resolved "https://registry.yarnpkg.com/babel-plugin-undefined-to-void/-/babel-plugin-undefined-to-void-1.1.6.tgz#7f578ef8b78dfae6003385d8417a61eda06e2f81"
-
-babel-preset-es2015@^6.18.0:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz#d44050d6bc2c9feea702aaf38d727a0210538939"
- dependencies:
- babel-plugin-check-es2015-constants "^6.22.0"
- babel-plugin-transform-es2015-arrow-functions "^6.22.0"
- babel-plugin-transform-es2015-block-scoped-functions "^6.22.0"
- babel-plugin-transform-es2015-block-scoping "^6.24.1"
- babel-plugin-transform-es2015-classes "^6.24.1"
- babel-plugin-transform-es2015-computed-properties "^6.24.1"
- babel-plugin-transform-es2015-destructuring "^6.22.0"
- babel-plugin-transform-es2015-duplicate-keys "^6.24.1"
- babel-plugin-transform-es2015-for-of "^6.22.0"
- babel-plugin-transform-es2015-function-name "^6.24.1"
- babel-plugin-transform-es2015-literals "^6.22.0"
- babel-plugin-transform-es2015-modules-amd "^6.24.1"
- babel-plugin-transform-es2015-modules-commonjs "^6.24.1"
- babel-plugin-transform-es2015-modules-systemjs "^6.24.1"
- babel-plugin-transform-es2015-modules-umd "^6.24.1"
- babel-plugin-transform-es2015-object-super "^6.24.1"
- babel-plugin-transform-es2015-parameters "^6.24.1"
- babel-plugin-transform-es2015-shorthand-properties "^6.24.1"
- babel-plugin-transform-es2015-spread "^6.22.0"
- babel-plugin-transform-es2015-sticky-regex "^6.24.1"
- babel-plugin-transform-es2015-template-literals "^6.22.0"
- babel-plugin-transform-es2015-typeof-symbol "^6.22.0"
- babel-plugin-transform-es2015-unicode-regex "^6.24.1"
- babel-plugin-transform-regenerator "^6.24.1"
-
-babel-preset-flow@^6.23.0:
- version "6.23.0"
- resolved "https://registry.yarnpkg.com/babel-preset-flow/-/babel-preset-flow-6.23.0.tgz#e71218887085ae9a24b5be4169affb599816c49d"
- dependencies:
- babel-plugin-transform-flow-strip-types "^6.22.0"
-
-babel-preset-jest@^19.0.0:
- version "19.0.0"
- resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-19.0.0.tgz#22d67201d02324a195811288eb38294bb3cac396"
- dependencies:
- babel-plugin-jest-hoist "^19.0.0"
-
-babel-preset-react@^6.16.0:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-preset-react/-/babel-preset-react-6.24.1.tgz#ba69dfaea45fc3ec639b6a4ecea6e17702c91380"
- dependencies:
- babel-plugin-syntax-jsx "^6.3.13"
- babel-plugin-transform-react-display-name "^6.23.0"
- babel-plugin-transform-react-jsx "^6.24.1"
- babel-plugin-transform-react-jsx-self "^6.22.0"
- babel-plugin-transform-react-jsx-source "^6.22.0"
- babel-preset-flow "^6.23.0"
-
-babel-preset-stage-0@^6.16.0:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-preset-stage-0/-/babel-preset-stage-0-6.24.1.tgz#5642d15042f91384d7e5af8bc88b1db95b039e6a"
- dependencies:
- babel-plugin-transform-do-expressions "^6.22.0"
- babel-plugin-transform-function-bind "^6.22.0"
- babel-preset-stage-1 "^6.24.1"
-
-babel-preset-stage-1@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-preset-stage-1/-/babel-preset-stage-1-6.24.1.tgz#7692cd7dcd6849907e6ae4a0a85589cfb9e2bfb0"
- dependencies:
- babel-plugin-transform-class-constructor-call "^6.24.1"
- babel-plugin-transform-export-extensions "^6.22.0"
- babel-preset-stage-2 "^6.24.1"
-
-babel-preset-stage-2@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz#d9e2960fb3d71187f0e64eec62bc07767219bdc1"
- dependencies:
- babel-plugin-syntax-dynamic-import "^6.18.0"
- babel-plugin-transform-class-properties "^6.24.1"
- babel-plugin-transform-decorators "^6.24.1"
- babel-preset-stage-3 "^6.24.1"
-
-babel-preset-stage-3@^6.24.1:
- version "6.24.1"
- resolved "https://registry.yarnpkg.com/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz#836ada0a9e7a7fa37cb138fb9326f87934a48395"
- dependencies:
- babel-plugin-syntax-trailing-function-commas "^6.22.0"
- babel-plugin-transform-async-generator-functions "^6.24.1"
- babel-plugin-transform-async-to-generator "^6.24.1"
- babel-plugin-transform-exponentiation-operator "^6.24.1"
- babel-plugin-transform-object-rest-spread "^6.22.0"
-
-babel-register@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071"
- dependencies:
- babel-core "^6.26.0"
- babel-runtime "^6.26.0"
- core-js "^2.5.0"
- home-or-tmp "^2.0.0"
- lodash "^4.17.4"
- mkdirp "^0.5.1"
- source-map-support "^0.4.15"
-
-babel-runtime@^6.11.6, babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.23.0, babel-runtime@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe"
- dependencies:
- core-js "^2.4.0"
- regenerator-runtime "^0.11.0"
-
-babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02"
- dependencies:
- babel-runtime "^6.26.0"
- babel-traverse "^6.26.0"
- babel-types "^6.26.0"
- babylon "^6.18.0"
- lodash "^4.17.4"
-
-babel-traverse@^6.0.20, babel-traverse@^6.18.0, babel-traverse@^6.24.1, babel-traverse@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee"
- dependencies:
- babel-code-frame "^6.26.0"
- babel-messages "^6.23.0"
- babel-runtime "^6.26.0"
- babel-types "^6.26.0"
- babylon "^6.18.0"
- debug "^2.6.8"
- globals "^9.18.0"
- invariant "^2.2.2"
- lodash "^4.17.4"
-
-babel-types@^6.0.19, babel-types@^6.18.0, babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497"
- dependencies:
- babel-runtime "^6.26.0"
- esutils "^2.0.2"
- lodash "^4.17.4"
- to-fast-properties "^1.0.3"
-
-babelify@^6.4.0:
- version "6.4.0"
- resolved "https://registry.yarnpkg.com/babelify/-/babelify-6.4.0.tgz#caf43888ba731b876b5567b643eecc66147693a5"
- dependencies:
- babel-core "^5.0.0"
- object-assign "^4.0.0"
-
-babylon@^5.8.38:
- version "5.8.38"
- resolved "https://registry.yarnpkg.com/babylon/-/babylon-5.8.38.tgz#ec9b120b11bf6ccd4173a18bf217e60b79859ffd"
-
-babylon@^6.0.18, babylon@^6.18.0:
- version "6.18.0"
- resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3"
-
-balanced-match@^0.4.2:
- version "0.4.2"
- resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838"
-
-balanced-match@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
-
-base62@^1.1.0:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/base62/-/base62-1.2.1.tgz#95a5a22350b0a557f3f081247fc2c398803ecb0c"
-
-base64-js@0.0.8:
- version "0.0.8"
- resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-0.0.8.tgz#1101e9544f4a76b1bc3b26d452ca96d7a35e7978"
-
-base64-js@^1.0.2:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.1.tgz#a91947da1f4a516ea38e5b4ec0ec3773675e0886"
-
-batch@0.6.1:
- version "0.6.1"
- resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16"
-
-bcrypt-pbkdf@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d"
- dependencies:
- tweetnacl "^0.14.3"
-
-beeper@^1.0.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/beeper/-/beeper-1.1.1.tgz#e6d5ea8c5dad001304a70b22638447f69cb2f809"
-
-big.js@^3.1.3:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e"
-
-binary-extensions@^1.0.0:
- version "1.11.0"
- resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.11.0.tgz#46aa1751fb6a2f93ee5e689bb1087d4b14c6c205"
-
-block-stream@*:
- version "0.0.9"
- resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a"
- dependencies:
- inherits "~2.0.0"
-
-bluebird@^2.9.33:
- version "2.11.0"
- resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-2.11.0.tgz#534b9033c022c9579c56ba3b3e5a5caafbb650e1"
-
-bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0:
- version "4.11.8"
- resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f"
-
-body-parser@1.18.2:
- version "1.18.2"
- resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.2.tgz#87678a19d84b47d859b83199bd59bce222b10454"
- dependencies:
- bytes "3.0.0"
- content-type "~1.0.4"
- debug "2.6.9"
- depd "~1.1.1"
- http-errors "~1.6.2"
- iconv-lite "0.4.19"
- on-finished "~2.3.0"
- qs "6.5.1"
- raw-body "2.3.2"
- type-is "~1.6.15"
-
-boom@2.x.x:
- version "2.10.1"
- resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f"
- dependencies:
- hoek "2.x.x"
-
-boom@4.x.x:
- version "4.3.1"
- resolved "https://registry.yarnpkg.com/boom/-/boom-4.3.1.tgz#4f8a3005cb4a7e3889f749030fd25b96e01d2e31"
- dependencies:
- hoek "4.x.x"
-
-boom@5.x.x:
- version "5.2.0"
- resolved "https://registry.yarnpkg.com/boom/-/boom-5.2.0.tgz#5dd9da6ee3a5f302077436290cb717d3f4a54e02"
- dependencies:
- hoek "4.x.x"
-
-bootstrap@3.3.5:
- version "3.3.5"
- resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-3.3.5.tgz#1777ab79299b128d87dce7cbd86fdc46ac69c0b1"
-
-bowser@^1.0.0:
- version "1.8.1"
- resolved "https://registry.yarnpkg.com/bowser/-/bowser-1.8.1.tgz#49785777e7302febadb1a5b71d9a646520ed310d"
-
-brace-expansion@^1.0.0, brace-expansion@^1.1.7:
- version "1.1.8"
- resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292"
- dependencies:
- balanced-match "^1.0.0"
- concat-map "0.0.1"
-
-braces@^1.8.2:
- version "1.8.5"
- resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7"
- dependencies:
- expand-range "^1.8.1"
- preserve "^0.2.0"
- repeat-element "^1.1.2"
-
-breakable@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/breakable/-/breakable-1.0.0.tgz#784a797915a38ead27bad456b5572cb4bbaa78c1"
-
-brorand@^1.0.1:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f"
-
-browser-pack@^5.0.0:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/browser-pack/-/browser-pack-5.0.1.tgz#4197719b20c6e0aaa09451c5111e53efb6fbc18d"
- dependencies:
- JSONStream "^1.0.3"
- combine-source-map "~0.6.1"
- defined "^1.0.0"
- through2 "^1.0.0"
- umd "^3.0.0"
-
-browser-pack@^6.0.1:
- version "6.0.2"
- resolved "https://registry.yarnpkg.com/browser-pack/-/browser-pack-6.0.2.tgz#f86cd6cef4f5300c8e63e07a4d512f65fbff4531"
- dependencies:
- JSONStream "^1.0.3"
- combine-source-map "~0.7.1"
- defined "^1.0.0"
- through2 "^2.0.0"
- umd "^3.0.0"
-
-browser-resolve@^1.11.0, browser-resolve@^1.11.2, browser-resolve@^1.7.0, browser-resolve@^1.7.1:
- version "1.11.2"
- resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.2.tgz#8ff09b0a2c421718a1051c260b32e48f442938ce"
- dependencies:
- resolve "1.1.7"
-
-browserify-aes@0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-0.4.0.tgz#067149b668df31c4b58533e02d01e806d8608e2c"
- dependencies:
- inherits "^2.0.1"
-
-browserify-aes@^1.0.0, browserify-aes@^1.0.4:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.1.1.tgz#38b7ab55edb806ff2dcda1a7f1620773a477c49f"
- dependencies:
- buffer-xor "^1.0.3"
- cipher-base "^1.0.0"
- create-hash "^1.1.0"
- evp_bytestokey "^1.0.3"
- inherits "^2.0.1"
- safe-buffer "^5.0.1"
-
-browserify-cipher@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.0.tgz#9988244874bf5ed4e28da95666dcd66ac8fc363a"
- dependencies:
- browserify-aes "^1.0.4"
- browserify-des "^1.0.0"
- evp_bytestokey "^1.0.0"
-
-browserify-des@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.0.tgz#daa277717470922ed2fe18594118a175439721dd"
- dependencies:
- cipher-base "^1.0.1"
- des.js "^1.0.0"
- inherits "^2.0.1"
-
-browserify-rsa@^4.0.0:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524"
- dependencies:
- bn.js "^4.1.0"
- randombytes "^2.0.1"
-
-browserify-sign@^4.0.0:
- version "4.0.4"
- resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298"
- dependencies:
- bn.js "^4.1.1"
- browserify-rsa "^4.0.0"
- create-hash "^1.1.0"
- create-hmac "^1.1.2"
- elliptic "^6.0.0"
- inherits "^2.0.1"
- parse-asn1 "^5.0.0"
-
-browserify-zlib@^0.1.4, browserify-zlib@~0.1.2:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.1.4.tgz#bb35f8a519f600e0fa6b8485241c979d0141fb2d"
- dependencies:
- pako "~0.2.0"
-
-browserify-zlib@~0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f"
- dependencies:
- pako "~1.0.5"
-
-browserify@^11.2.0:
- version "11.2.0"
- resolved "https://registry.yarnpkg.com/browserify/-/browserify-11.2.0.tgz#a11bb9dd209d79572b813f7eeeaf828a5f5c0e4e"
- dependencies:
- JSONStream "^1.0.3"
- assert "~1.3.0"
- browser-pack "^5.0.0"
- browser-resolve "^1.7.1"
- browserify-zlib "~0.1.2"
- buffer "^3.0.0"
- builtins "~0.0.3"
- commondir "0.0.1"
- concat-stream "~1.4.1"
- console-browserify "^1.1.0"
- constants-browserify "~0.0.1"
- crypto-browserify "^3.0.0"
- defined "^1.0.0"
- deps-sort "^1.3.7"
- domain-browser "~1.1.0"
- duplexer2 "~0.0.2"
- events "~1.0.0"
- glob "^4.0.5"
- has "^1.0.0"
- htmlescape "^1.1.0"
- https-browserify "~0.0.0"
- inherits "~2.0.1"
- insert-module-globals "^6.4.1"
- isarray "0.0.1"
- labeled-stream-splicer "^1.0.0"
- module-deps "^3.7.11"
- os-browserify "~0.1.1"
- parents "^1.0.1"
- path-browserify "~0.0.0"
- process "~0.11.0"
- punycode "^1.3.2"
- querystring-es3 "~0.2.0"
- read-only-stream "^1.1.1"
- readable-stream "^2.0.2"
- resolve "^1.1.4"
- shasum "^1.0.0"
- shell-quote "~0.0.1"
- stream-browserify "^2.0.0"
- stream-http "^1.2.0"
- string_decoder "~0.10.0"
- subarg "^1.0.0"
- syntax-error "^1.1.1"
- through2 "^1.0.0"
- timers-browserify "^1.0.1"
- tty-browserify "~0.0.0"
- url "~0.10.1"
- util "~0.10.1"
- vm-browserify "~0.0.1"
- xtend "^4.0.0"
-
-browserify@^14.0.0:
- version "14.5.0"
- resolved "https://registry.yarnpkg.com/browserify/-/browserify-14.5.0.tgz#0bbbce521acd6e4d1d54d8e9365008efb85a9cc5"
- dependencies:
- JSONStream "^1.0.3"
- assert "^1.4.0"
- browser-pack "^6.0.1"
- browser-resolve "^1.11.0"
- browserify-zlib "~0.2.0"
- buffer "^5.0.2"
- cached-path-relative "^1.0.0"
- concat-stream "~1.5.1"
- console-browserify "^1.1.0"
- constants-browserify "~1.0.0"
- crypto-browserify "^3.0.0"
- defined "^1.0.0"
- deps-sort "^2.0.0"
- domain-browser "~1.1.0"
- duplexer2 "~0.1.2"
- events "~1.1.0"
- glob "^7.1.0"
- has "^1.0.0"
- htmlescape "^1.1.0"
- https-browserify "^1.0.0"
- inherits "~2.0.1"
- insert-module-globals "^7.0.0"
- labeled-stream-splicer "^2.0.0"
- module-deps "^4.0.8"
- os-browserify "~0.3.0"
- parents "^1.0.1"
- path-browserify "~0.0.0"
- process "~0.11.0"
- punycode "^1.3.2"
- querystring-es3 "~0.2.0"
- read-only-stream "^2.0.0"
- readable-stream "^2.0.2"
- resolve "^1.1.4"
- shasum "^1.0.0"
- shell-quote "^1.6.1"
- stream-browserify "^2.0.0"
- stream-http "^2.0.0"
- string_decoder "~1.0.0"
- subarg "^1.0.0"
- syntax-error "^1.1.1"
- through2 "^2.0.0"
- timers-browserify "^1.0.1"
- tty-browserify "~0.0.0"
- url "~0.11.0"
- util "~0.10.1"
- vm-browserify "~0.0.1"
- xtend "^4.0.0"
-
-browserslist@^1.3.6, browserslist@^1.5.2, browserslist@^1.7.6:
- version "1.7.7"
- resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-1.7.7.tgz#0bd76704258be829b2398bb50e4b62d1a166b0b9"
- dependencies:
- caniuse-db "^1.0.30000639"
- electron-to-chromium "^1.2.7"
-
-bser@1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/bser/-/bser-1.0.2.tgz#381116970b2a6deea5646dd15dd7278444b56169"
- dependencies:
- node-int64 "^0.4.0"
-
-bser@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/bser/-/bser-2.0.0.tgz#9ac78d3ed5d915804fd87acb158bc797147a1719"
- dependencies:
- node-int64 "^0.4.0"
-
-buffer-xor@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9"
-
-buffer@^3.0.0:
- version "3.6.0"
- resolved "https://registry.yarnpkg.com/buffer/-/buffer-3.6.0.tgz#a72c936f77b96bf52f5f7e7b467180628551defb"
- dependencies:
- base64-js "0.0.8"
- ieee754 "^1.1.4"
- isarray "^1.0.0"
-
-buffer@^4.9.0:
- version "4.9.1"
- resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298"
- dependencies:
- base64-js "^1.0.2"
- ieee754 "^1.1.4"
- isarray "^1.0.0"
-
-buffer@^5.0.2:
- version "5.0.8"
- resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.0.8.tgz#84daa52e7cf2fa8ce4195bc5cf0f7809e0930b24"
- dependencies:
- base64-js "^1.0.2"
- ieee754 "^1.1.4"
-
-builtin-modules@^1.0.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f"
-
-builtin-status-codes@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-1.0.0.tgz#30637ee262978ac07174e16d7f82f0ad06e085ad"
-
-builtin-status-codes@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8"
-
-builtins@~0.0.3:
- version "0.0.7"
- resolved "https://registry.yarnpkg.com/builtins/-/builtins-0.0.7.tgz#355219cd6cf18dbe7c01cc7fd2dce765cfdc549a"
-
-bytes@3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048"
-
-cached-path-relative@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/cached-path-relative/-/cached-path-relative-1.0.1.tgz#d09c4b52800aa4c078e2dd81a869aac90d2e54e7"
-
-callsites@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50"
-
-camelcase-keys@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7"
- dependencies:
- camelcase "^2.0.0"
- map-obj "^1.0.0"
-
-camelcase@^1.0.2, camelcase@^1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39"
-
-camelcase@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f"
-
-camelcase@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a"
-
-caniuse-api@^1.5.2:
- version "1.6.1"
- resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-1.6.1.tgz#b534e7c734c4f81ec5fbe8aca2ad24354b962c6c"
- dependencies:
- browserslist "^1.3.6"
- caniuse-db "^1.0.30000529"
- lodash.memoize "^4.1.2"
- lodash.uniq "^4.5.0"
-
-caniuse-db@^1.0.30000529, caniuse-db@^1.0.30000634, caniuse-db@^1.0.30000639:
- version "1.0.30000782"
- resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000782.tgz#d8815bce1578c350aced1132507301205e0fab53"
-
-caseless@~0.12.0:
- version "0.12.0"
- resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
-
-center-align@^0.1.1:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad"
- dependencies:
- align-text "^0.1.3"
- lazy-cache "^1.0.3"
-
-chalk@^0.5.0:
- version "0.5.1"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-0.5.1.tgz#663b3a648b68b55d04690d49167aa837858f2174"
- dependencies:
- ansi-styles "^1.1.0"
- escape-string-regexp "^1.0.0"
- has-ansi "^0.1.0"
- strip-ansi "^0.3.0"
- supports-color "^0.2.0"
-
-chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
- dependencies:
- ansi-styles "^2.2.1"
- escape-string-regexp "^1.0.2"
- has-ansi "^2.0.0"
- strip-ansi "^3.0.0"
- supports-color "^2.0.0"
-
-chalk@^2.3.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.0.tgz#b5ea48efc9c1793dccc9b4767c93914d3f2d52ba"
- dependencies:
- ansi-styles "^3.1.0"
- escape-string-regexp "^1.0.5"
- supports-color "^4.0.0"
-
-chokidar@^1.0.0:
- version "1.7.0"
- resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468"
- dependencies:
- anymatch "^1.3.0"
- async-each "^1.0.0"
- glob-parent "^2.0.0"
- inherits "^2.0.1"
- is-binary-path "^1.0.0"
- is-glob "^2.0.0"
- path-is-absolute "^1.0.0"
- readdirp "^2.0.0"
- optionalDependencies:
- fsevents "^1.0.0"
-
-ci-info@^1.0.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.1.2.tgz#03561259db48d0474c8bdc90f5b47b068b6bbfb4"
-
-cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de"
- dependencies:
- inherits "^2.0.1"
- safe-buffer "^5.0.1"
-
-circular-json@^0.3.1:
- version "0.3.3"
- resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66"
-
-clap@^1.0.9:
- version "1.2.3"
- resolved "https://registry.yarnpkg.com/clap/-/clap-1.2.3.tgz#4f36745b32008492557f46412d66d50cb99bce51"
- dependencies:
- chalk "^1.1.3"
-
-classnames@^2.1.2, classnames@^2.2.5:
- version "2.2.5"
- resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.5.tgz#fb3801d453467649ef3603c7d61a02bd129bde6d"
-
-clean-css@^3.1.9:
- version "3.4.28"
- resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-3.4.28.tgz#bf1945e82fc808f55695e6ddeaec01400efd03ff"
- dependencies:
- commander "2.8.x"
- source-map "0.4.x"
-
-cli-width@^1.0.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-1.1.1.tgz#a4d293ef67ebb7b88d4a4d42c0ccf00c4d1e366d"
-
-cliui@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1"
- dependencies:
- center-align "^0.1.1"
- right-align "^0.1.1"
- wordwrap "0.0.2"
-
-cliui@^3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d"
- dependencies:
- string-width "^1.0.1"
- strip-ansi "^3.0.1"
- wrap-ansi "^2.0.0"
-
-clone-stats@^0.0.1, clone-stats@~0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-0.0.1.tgz#b88f94a82cf38b8791d58046ea4029ad88ca99d1"
-
-clone@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/clone/-/clone-0.2.0.tgz#c6126a90ad4f72dbf5acdb243cc37724fe93fc1f"
-
-clone@^1.0.0, clone@^1.0.2:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.3.tgz#298d7e2231660f40c003c2ed3140decf3f53085f"
-
-co@^4.6.0:
- version "4.6.0"
- resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
-
-coa@~1.0.1:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/coa/-/coa-1.0.4.tgz#a9ef153660d6a86a8bdec0289a5c684d217432fd"
- dependencies:
- q "^1.1.2"
-
-code-point-at@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77"
-
-color-convert@^1.3.0, color-convert@^1.9.0:
- version "1.9.1"
- resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.1.tgz#c1261107aeb2f294ebffec9ed9ecad529a6097ed"
- dependencies:
- color-name "^1.1.1"
-
-color-name@^1.0.0, color-name@^1.1.1:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
-
-color-string@^0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/color-string/-/color-string-0.3.0.tgz#27d46fb67025c5c2fa25993bfbf579e47841b991"
- dependencies:
- color-name "^1.0.0"
-
-color@^0.11.0:
- version "0.11.4"
- resolved "https://registry.yarnpkg.com/color/-/color-0.11.4.tgz#6d7b5c74fb65e841cd48792ad1ed5e07b904d764"
- dependencies:
- clone "^1.0.2"
- color-convert "^1.3.0"
- color-string "^0.3.0"
-
-colormin@^1.0.5:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/colormin/-/colormin-1.1.2.tgz#ea2f7420a72b96881a38aae59ec124a6f7298133"
- dependencies:
- color "^0.11.0"
- css-color-names "0.0.4"
- has "^1.0.1"
-
-colors@0.5.x:
- version "0.5.1"
- resolved "https://registry.yarnpkg.com/colors/-/colors-0.5.1.tgz#7d0023eaeb154e8ee9fce75dcb923d0ed1667774"
-
-colors@~1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63"
-
-combine-source-map@~0.6.1:
- version "0.6.1"
- resolved "https://registry.yarnpkg.com/combine-source-map/-/combine-source-map-0.6.1.tgz#9b4a09c316033d768e0f11e029fa2730e079ad96"
- dependencies:
- convert-source-map "~1.1.0"
- inline-source-map "~0.5.0"
- lodash.memoize "~3.0.3"
- source-map "~0.4.2"
-
-combine-source-map@~0.7.1:
- version "0.7.2"
- resolved "https://registry.yarnpkg.com/combine-source-map/-/combine-source-map-0.7.2.tgz#0870312856b307a87cc4ac486f3a9a62aeccc09e"
- dependencies:
- convert-source-map "~1.1.0"
- inline-source-map "~0.6.0"
- lodash.memoize "~3.0.3"
- source-map "~0.5.3"
-
-combined-stream@^1.0.5, combined-stream@~1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.5.tgz#938370a57b4a51dea2c77c15d5c5fdf895164009"
- dependencies:
- delayed-stream "~1.0.0"
-
-commander@2.8.x:
- version "2.8.1"
- resolved "https://registry.yarnpkg.com/commander/-/commander-2.8.1.tgz#06be367febfda0c330aa1e2a072d3dc9762425d4"
- dependencies:
- graceful-readlink ">= 1.0.0"
-
-commander@^2.5.0:
- version "2.12.2"
- resolved "https://registry.yarnpkg.com/commander/-/commander-2.12.2.tgz#0f5946c427ed9ec0d91a46bb9def53e54650e555"
-
-commondir@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/commondir/-/commondir-0.0.1.tgz#89f00fdcd51b519c578733fec563e6a6da7f5be2"
-
-commondir@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
-
-commoner@^0.10.1, commoner@~0.10.3:
- version "0.10.8"
- resolved "https://registry.yarnpkg.com/commoner/-/commoner-0.10.8.tgz#34fc3672cd24393e8bb47e70caa0293811f4f2c5"
- dependencies:
- commander "^2.5.0"
- detective "^4.3.1"
- glob "^5.0.15"
- graceful-fs "^4.1.2"
- iconv-lite "^0.4.5"
- mkdirp "^0.5.0"
- private "^0.1.6"
- q "^1.1.2"
- recast "^0.11.17"
-
-compressible@~2.0.11:
- version "2.0.12"
- resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.12.tgz#c59a5c99db76767e9876500e271ef63b3493bd66"
- dependencies:
- mime-db ">= 1.30.0 < 2"
-
-compression@^1.5.2:
- version "1.7.1"
- resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.1.tgz#eff2603efc2e22cf86f35d2eb93589f9875373db"
- dependencies:
- accepts "~1.3.4"
- bytes "3.0.0"
- compressible "~2.0.11"
- debug "2.6.9"
- on-headers "~1.0.1"
- safe-buffer "5.1.1"
- vary "~1.1.2"
-
-concat-map@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
-
-concat-stream@^1.4.6:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7"
- dependencies:
- inherits "^2.0.3"
- readable-stream "^2.2.2"
- typedarray "^0.0.6"
-
-concat-stream@~1.4.1, concat-stream@~1.4.5:
- version "1.4.10"
- resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.4.10.tgz#acc3bbf5602cb8cc980c6ac840fa7d8603e3ef36"
- dependencies:
- inherits "~2.0.1"
- readable-stream "~1.1.9"
- typedarray "~0.0.5"
-
-concat-stream@~1.5.0, concat-stream@~1.5.1:
- version "1.5.2"
- resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.5.2.tgz#708978624d856af41a5a741defdd261da752c266"
- dependencies:
- inherits "~2.0.1"
- readable-stream "~2.0.0"
- typedarray "~0.0.5"
-
-connect-history-api-fallback@^1.3.0:
- version "1.5.0"
- resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz#b06873934bc5e344fef611a196a6faae0aee015a"
-
-console-browserify@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10"
- dependencies:
- date-now "^0.1.4"
-
-console-control-strings@^1.0.0, console-control-strings@~1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e"
-
-constants-browserify@^1.0.0, constants-browserify@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75"
-
-constants-browserify@~0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-0.0.1.tgz#92577db527ba6c4cf0a4568d84bc031f441e21f2"
-
-content-disposition@0.5.2:
- version "0.5.2"
- resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4"
-
-content-type-parser@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/content-type-parser/-/content-type-parser-1.0.2.tgz#caabe80623e63638b2502fd4c7f12ff4ce2352e7"
-
-content-type@~1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b"
-
-convert-source-map@^0.3.3:
- version "0.3.5"
- resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-0.3.5.tgz#f1d802950af7dd2631a1febe0596550c86ab3190"
-
-convert-source-map@^1.1.0, convert-source-map@^1.5.0:
- version "1.5.1"
- resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.1.tgz#b8278097b9bc229365de5c62cf5fcaed8b5599e5"
-
-convert-source-map@~1.1.0:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.1.3.tgz#4829c877e9fe49b3161f3bf3673888e204699860"
-
-cookie-signature@1.0.6:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c"
-
-cookie@0.3.1:
- version "0.3.1"
- resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb"
-
-core-js@^1.0.0:
- version "1.2.7"
- resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636"
-
-core-js@^2.4.0, core-js@^2.5.0:
- version "2.5.3"
- resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.3.tgz#8acc38345824f16d8365b7c9b4259168e8ed603e"
-
-core-util-is@1.0.2, core-util-is@~1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
-
-create-ecdh@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.0.tgz#888c723596cdf7612f6498233eebd7a35301737d"
- dependencies:
- bn.js "^4.1.0"
- elliptic "^6.0.0"
-
-create-hash@^1.1.0, create-hash@^1.1.2:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.3.tgz#606042ac8b9262750f483caddab0f5819172d8fd"
- dependencies:
- cipher-base "^1.0.1"
- inherits "^2.0.1"
- ripemd160 "^2.0.0"
- sha.js "^2.4.0"
-
-create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4:
- version "1.1.6"
- resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.6.tgz#acb9e221a4e17bdb076e90657c42b93e3726cf06"
- dependencies:
- cipher-base "^1.0.3"
- create-hash "^1.1.0"
- inherits "^2.0.1"
- ripemd160 "^2.0.0"
- safe-buffer "^5.0.1"
- sha.js "^2.4.8"
-
-create-react-class@^15.5.1:
- version "15.6.2"
- resolved "https://registry.yarnpkg.com/create-react-class/-/create-react-class-15.6.2.tgz#cf1ed15f12aad7f14ef5f2dfe05e6c42f91ef02a"
- dependencies:
- fbjs "^0.8.9"
- loose-envify "^1.3.1"
- object-assign "^4.1.1"
-
-cryptiles@2.x.x:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8"
- dependencies:
- boom "2.x.x"
-
-cryptiles@3.x.x:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-3.1.2.tgz#a89fbb220f5ce25ec56e8c4aa8a4fd7b5b0d29fe"
- dependencies:
- boom "5.x.x"
-
-crypto-browserify@3.3.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.3.0.tgz#b9fc75bb4a0ed61dcf1cd5dae96eb30c9c3e506c"
- dependencies:
- browserify-aes "0.4.0"
- pbkdf2-compat "2.0.1"
- ripemd160 "0.2.0"
- sha.js "2.2.6"
-
-crypto-browserify@^3.0.0:
- version "3.12.0"
- resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec"
- dependencies:
- browserify-cipher "^1.0.0"
- browserify-sign "^4.0.0"
- create-ecdh "^4.0.0"
- create-hash "^1.1.0"
- create-hmac "^1.1.0"
- diffie-hellman "^5.0.0"
- inherits "^2.0.1"
- pbkdf2 "^3.0.3"
- public-encrypt "^4.0.0"
- randombytes "^2.0.0"
- randomfill "^1.0.3"
-
-css-color-list@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/css-color-list/-/css-color-list-0.0.1.tgz#8718e8695ae7a2cc8787be8715f1c008a7f28b15"
- dependencies:
- css-color-names "0.0.1"
-
-css-color-names@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.1.tgz#5d0548fa256456ede4a9a0c2ac7ab19d3eb1ad81"
-
-css-color-names@0.0.4:
- version "0.0.4"
- resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0"
-
-css-loader@^0.21.0:
- version "0.21.0"
- resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-0.21.0.tgz#50335b231152df44663f3b54bd62e24f3c8d66ec"
- dependencies:
- css-selector-tokenizer "^0.5.1"
- cssnano ">=2.6.1 <4"
- loader-utils "~0.2.2"
- lodash.camelcase "^3.0.1"
- object-assign "^4.0.1"
- postcss "^5.0.6"
- postcss-modules-extract-imports "1.0.0-beta2"
- postcss-modules-local-by-default "^1.0.0"
- postcss-modules-scope "1.0.0-beta2"
- postcss-modules-values "^1.1.0"
- source-list-map "^0.1.4"
-
-css-selector-tokenizer@^0.5.0, css-selector-tokenizer@^0.5.1:
- version "0.5.4"
- resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.5.4.tgz#139bafd34a35fd0c1428487049e0699e6f6a2c21"
- dependencies:
- cssesc "^0.1.0"
- fastparse "^1.1.1"
-
-css-selector-tokenizer@^0.7.0:
- version "0.7.0"
- resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz#e6988474ae8c953477bf5e7efecfceccd9cf4c86"
- dependencies:
- cssesc "^0.1.0"
- fastparse "^1.1.1"
- regexpu-core "^1.0.0"
-
-css-to-react-native@^1.0.6:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/css-to-react-native/-/css-to-react-native-1.0.6.tgz#728c7e774e56536558a0ecaa990d9507c43a4ac4"
- dependencies:
- css-color-list "0.0.1"
- fbjs "^0.8.5"
- nearley "^2.7.7"
-
-css@^2.0.0:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/css/-/css-2.2.1.tgz#73a4c81de85db664d4ee674f7d47085e3b2d55dc"
- dependencies:
- inherits "^2.0.1"
- source-map "^0.1.38"
- source-map-resolve "^0.3.0"
- urix "^0.1.0"
-
-cssesc@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4"
-
-"cssnano@>=2.6.1 <4":
- version "3.10.0"
- resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-3.10.0.tgz#4f38f6cea2b9b17fa01490f23f1dc68ea65c1c38"
- dependencies:
- autoprefixer "^6.3.1"
- decamelize "^1.1.2"
- defined "^1.0.0"
- has "^1.0.1"
- object-assign "^4.0.1"
- postcss "^5.0.14"
- postcss-calc "^5.2.0"
- postcss-colormin "^2.1.8"
- postcss-convert-values "^2.3.4"
- postcss-discard-comments "^2.0.4"
- postcss-discard-duplicates "^2.0.1"
- postcss-discard-empty "^2.0.1"
- postcss-discard-overridden "^0.1.1"
- postcss-discard-unused "^2.2.1"
- postcss-filter-plugins "^2.0.0"
- postcss-merge-idents "^2.1.5"
- postcss-merge-longhand "^2.0.1"
- postcss-merge-rules "^2.0.3"
- postcss-minify-font-values "^1.0.2"
- postcss-minify-gradients "^1.0.1"
- postcss-minify-params "^1.0.4"
- postcss-minify-selectors "^2.0.4"
- postcss-normalize-charset "^1.1.0"
- postcss-normalize-url "^3.0.7"
- postcss-ordered-values "^2.1.0"
- postcss-reduce-idents "^2.2.2"
- postcss-reduce-initial "^1.0.0"
- postcss-reduce-transforms "^1.0.3"
- postcss-svgo "^2.1.1"
- postcss-unique-selectors "^2.0.2"
- postcss-value-parser "^3.2.3"
- postcss-zindex "^2.0.1"
-
-csso@~2.3.1:
- version "2.3.2"
- resolved "https://registry.yarnpkg.com/csso/-/csso-2.3.2.tgz#ddd52c587033f49e94b71fc55569f252e8ff5f85"
- dependencies:
- clap "^1.0.9"
- source-map "^0.5.3"
-
-cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0":
- version "0.3.2"
- resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.2.tgz#b8036170c79f07a90ff2f16e22284027a243848b"
-
-"cssstyle@>= 0.2.37 < 0.3.0":
- version "0.2.37"
- resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-0.2.37.tgz#541097234cb2513c83ceed3acddc27ff27987d54"
- dependencies:
- cssom "0.3.x"
-
-currently-unhandled@^0.4.1:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea"
- dependencies:
- array-find-index "^1.0.1"
-
-d@1:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f"
- dependencies:
- es5-ext "^0.10.9"
-
-dashdash@^1.12.0:
- version "1.14.1"
- resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0"
- dependencies:
- assert-plus "^1.0.0"
-
-date-now@^0.1.4:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b"
-
-dateformat@^1.0.7-1.2.3:
- version "1.0.12"
- resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-1.0.12.tgz#9f124b67594c937ff706932e4a642cca8dbbfee9"
- dependencies:
- get-stdin "^4.0.1"
- meow "^3.3.0"
-
-dateformat@^2.0.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-2.2.0.tgz#4065e2013cf9fb916ddfd82efb506ad4c6769062"
-
-debug@2.6.9, debug@^2.1.1, debug@^2.2.0, debug@^2.6.6, debug@^2.6.8:
- version "2.6.9"
- resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
- dependencies:
- ms "2.0.0"
-
-debug@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261"
- dependencies:
- ms "2.0.0"
-
-decamelize@^1.0.0, decamelize@^1.1.1, decamelize@^1.1.2:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
-
-deep-extend@~0.4.0:
- version "0.4.2"
- resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f"
-
-deep-is@~0.1.2, deep-is@~0.1.3:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
-
-default-require-extensions@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-1.0.0.tgz#f37ea15d3e13ffd9b437d33e1a75b5fb97874cb8"
- dependencies:
- strip-bom "^2.0.0"
-
-defaults@^1.0.0:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d"
- dependencies:
- clone "^1.0.2"
-
-defined@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693"
-
-defs@~1.1.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/defs/-/defs-1.1.1.tgz#b22609f2c7a11ba7a3db116805c139b1caffa9d2"
- dependencies:
- alter "~0.2.0"
- ast-traverse "~0.1.1"
- breakable "~1.0.0"
- esprima-fb "~15001.1001.0-dev-harmony-fb"
- simple-fmt "~0.1.0"
- simple-is "~0.2.0"
- stringmap "~0.2.2"
- stringset "~0.2.1"
- tryor "~0.1.2"
- yargs "~3.27.0"
-
-del@^2.0.2, del@^2.2.0:
- version "2.2.2"
- resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8"
- dependencies:
- globby "^5.0.0"
- is-path-cwd "^1.0.0"
- is-path-in-cwd "^1.0.0"
- object-assign "^4.0.1"
- pify "^2.0.0"
- pinkie-promise "^2.0.0"
- rimraf "^2.2.8"
-
-delayed-stream@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
-
-delegates@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a"
-
-depd@1.1.1, depd@~1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.1.tgz#5783b4e1c459f06fa5ca27f991f3d06e7a310359"
-
-deprecated@^0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/deprecated/-/deprecated-0.0.1.tgz#f9c9af5464afa1e7a971458a8bdef2aa94d5bb19"
-
-deps-sort@^1.3.7:
- version "1.3.9"
- resolved "https://registry.yarnpkg.com/deps-sort/-/deps-sort-1.3.9.tgz#29dfff53e17b36aecae7530adbbbf622c2ed1a71"
- dependencies:
- JSONStream "^1.0.3"
- shasum "^1.0.0"
- subarg "^1.0.0"
- through2 "^1.0.0"
-
-deps-sort@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/deps-sort/-/deps-sort-2.0.0.tgz#091724902e84658260eb910748cccd1af6e21fb5"
- dependencies:
- JSONStream "^1.0.3"
- shasum "^1.0.0"
- subarg "^1.0.0"
- through2 "^2.0.0"
-
-des.js@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc"
- dependencies:
- inherits "^2.0.1"
- minimalistic-assert "^1.0.0"
-
-destroy@~1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80"
-
-detect-file@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-0.1.0.tgz#4935dedfd9488648e006b0129566e9386711ea63"
- dependencies:
- fs-exists-sync "^0.1.0"
-
-detect-indent@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-3.0.1.tgz#9dc5e5ddbceef8325764b9451b02bc6d54084f75"
- dependencies:
- get-stdin "^4.0.1"
- minimist "^1.1.0"
- repeating "^1.1.0"
-
-detect-indent@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208"
- dependencies:
- repeating "^2.0.0"
-
-detect-libc@^1.0.2:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
-
-detective@^4.0.0, detective@^4.3.1:
- version "4.7.0"
- resolved "https://registry.yarnpkg.com/detective/-/detective-4.7.0.tgz#6276e150f9e50829ad1f90ace4d9a2304188afcf"
- dependencies:
- acorn "^5.2.1"
- defined "^1.0.0"
-
-diff@^3.0.0:
- version "3.4.0"
- resolved "https://registry.yarnpkg.com/diff/-/diff-3.4.0.tgz#b1d85507daf3964828de54b37d0d73ba67dda56c"
-
-diffie-hellman@^5.0.0:
- version "5.0.2"
- resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.2.tgz#b5835739270cfe26acf632099fded2a07f209e5e"
- dependencies:
- bn.js "^4.1.0"
- miller-rabin "^4.0.0"
- randombytes "^2.0.0"
-
-discontinuous-range@1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/discontinuous-range/-/discontinuous-range-1.0.0.tgz#e38331f0844bba49b9a9cb71c771585aab1bc65a"
-
-doctrine@^0.7.0:
- version "0.7.2"
- resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-0.7.2.tgz#7cb860359ba3be90e040b26b729ce4bfa654c523"
- dependencies:
- esutils "^1.1.6"
- isarray "0.0.1"
-
-dom-helpers@^3.2.0, dom-helpers@^3.2.1:
- version "3.2.1"
- resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-3.2.1.tgz#3203e07fed217bd1f424b019735582fc37b2825a"
-
-dom-walk@^0.1.0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.1.tgz#672226dc74c8f799ad35307df936aba11acd6018"
-
-domain-browser@^1.1.1, domain-browser@~1.1.0:
- version "1.1.7"
- resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz#867aa4b093faa05f1de08c06f4d7b21fdf8698bc"
-
-duplexer2@0.0.2, duplexer2@~0.0.2:
- version "0.0.2"
- resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.0.2.tgz#c614dcf67e2fb14995a91711e5a617e8a60a31db"
- dependencies:
- readable-stream "~1.1.9"
-
-duplexer2@^0.1.2, duplexer2@~0.1.0, duplexer2@~0.1.2:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.1.4.tgz#8b12dab878c0d69e3e7891051662a32fc6bddcc1"
- dependencies:
- readable-stream "^2.0.2"
-
-ecc-jsbn@~0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505"
- dependencies:
- jsbn "~0.1.0"
-
-ee-first@1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
-
-electron-to-chromium@^1.2.7:
- version "1.3.28"
- resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.28.tgz#8dd4e6458086644e9f9f0a1cf32e2a1f9dffd9ee"
-
-elliptic@^6.0.0:
- version "6.4.0"
- resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df"
- dependencies:
- bn.js "^4.4.0"
- brorand "^1.0.1"
- hash.js "^1.0.0"
- hmac-drbg "^1.0.0"
- inherits "^2.0.1"
- minimalistic-assert "^1.0.0"
- minimalistic-crypto-utils "^1.0.0"
-
-emojis-list@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389"
-
-encodeurl@~1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.1.tgz#79e3d58655346909fe6f0f45a5de68103b294d20"
-
-encoding@^0.1.11:
- version "0.1.12"
- resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb"
- dependencies:
- iconv-lite "~0.4.13"
-
-end-of-stream@~0.1.5:
- version "0.1.5"
- resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-0.1.5.tgz#8e177206c3c80837d85632e8b9359dfe8b2f6eaf"
- dependencies:
- once "~1.3.0"
-
-enhanced-resolve@~0.9.0:
- version "0.9.1"
- resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-0.9.1.tgz#4d6e689b3725f86090927ccc86cd9f1635b89e2e"
- dependencies:
- graceful-fs "^4.1.2"
- memory-fs "^0.2.0"
- tapable "^0.1.8"
-
-errno@^0.1.3, errno@^0.1.4:
- version "0.1.5"
- resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.5.tgz#a563781a6052bc2c9ccd89e8cef0eb9506e0c321"
- dependencies:
- prr "~1.0.1"
-
-error-ex@^1.2.0:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc"
- dependencies:
- is-arrayish "^0.2.1"
-
-error-stack-parser@^1.3.6:
- version "1.3.6"
- resolved "https://registry.yarnpkg.com/error-stack-parser/-/error-stack-parser-1.3.6.tgz#e0e73b93e417138d1cd7c0b746b1a4a14854c292"
- dependencies:
- stackframe "^0.3.1"
-
-es5-ext@^0.10.14, es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14:
- version "0.10.37"
- resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.37.tgz#0ee741d148b80069ba27d020393756af257defc3"
- dependencies:
- es6-iterator "~2.0.1"
- es6-symbol "~3.1.1"
-
-es6-iterator@^2.0.1, es6-iterator@~2.0.1:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7"
- dependencies:
- d "1"
- es5-ext "^0.10.35"
- es6-symbol "^3.1.1"
-
-es6-map@^0.1.3:
- version "0.1.5"
- resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.5.tgz#9136e0503dcc06a301690f0bb14ff4e364e949f0"
- dependencies:
- d "1"
- es5-ext "~0.10.14"
- es6-iterator "~2.0.1"
- es6-set "~0.1.5"
- es6-symbol "~3.1.1"
- event-emitter "~0.3.5"
-
-es6-set@~0.1.5:
- version "0.1.5"
- resolved "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.5.tgz#d2b3ec5d4d800ced818db538d28974db0a73ccb1"
- dependencies:
- d "1"
- es5-ext "~0.10.14"
- es6-iterator "~2.0.1"
- es6-symbol "3.1.1"
- event-emitter "~0.3.5"
-
-es6-symbol@3.1.1, es6-symbol@^3.1.1, es6-symbol@~3.1.1:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77"
- dependencies:
- d "1"
- es5-ext "~0.10.14"
-
-es6-weak-map@^2.0.1:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.2.tgz#5e3ab32251ffd1538a1f8e5ffa1357772f92d96f"
- dependencies:
- d "1"
- es5-ext "^0.10.14"
- es6-iterator "^2.0.1"
- es6-symbol "^3.1.1"
-
-escape-html@~1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988"
-
-escape-string-regexp@^1.0.0, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
-
-escodegen@^1.6.1:
- version "1.9.0"
- resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.9.0.tgz#9811a2f265dc1cd3894420ee3717064b632b8852"
- dependencies:
- esprima "^3.1.3"
- estraverse "^4.2.0"
- esutils "^2.0.2"
- optionator "^0.8.1"
- optionalDependencies:
- source-map "~0.5.6"
-
-escope@^3.2.0:
- version "3.6.0"
- resolved "https://registry.yarnpkg.com/escope/-/escope-3.6.0.tgz#e01975e812781a163a6dadfdd80398dc64c889c3"
- dependencies:
- es6-map "^0.1.3"
- es6-weak-map "^2.0.1"
- esrecurse "^4.1.0"
- estraverse "^4.1.1"
-
-eslint-config-airbnb@0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/eslint-config-airbnb/-/eslint-config-airbnb-0.1.0.tgz#5c6a122508050659a9446b69ac0ad4e701bfb2e0"
-
-eslint-loader@^1.3.0:
- version "1.9.0"
- resolved "https://registry.yarnpkg.com/eslint-loader/-/eslint-loader-1.9.0.tgz#7e1be9feddca328d3dcfaef1ad49d5beffe83a13"
- dependencies:
- loader-fs-cache "^1.0.0"
- loader-utils "^1.0.2"
- object-assign "^4.0.1"
- object-hash "^1.1.4"
- rimraf "^2.6.1"
-
-eslint-plugin-react@3.6.3:
- version "3.6.3"
- resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-3.6.3.tgz#6c6835d76fd946595eb745f0781f86e8bcb5d580"
-
-eslint@1.7.3:
- version "1.7.3"
- resolved "https://registry.yarnpkg.com/eslint/-/eslint-1.7.3.tgz#b41f5c31fa891a1cb26c9a08831966e3b4eacdeb"
- dependencies:
- chalk "^1.0.0"
- concat-stream "^1.4.6"
- debug "^2.1.1"
- doctrine "^0.7.0"
- escape-string-regexp "^1.0.2"
- escope "^3.2.0"
- espree "^2.2.4"
- estraverse "^4.1.0"
- estraverse-fb "^1.3.1"
- esutils "^2.0.2"
- file-entry-cache "^1.1.1"
- glob "^5.0.14"
- globals "^8.11.0"
- handlebars "^4.0.0"
- inquirer "^0.9.0"
- is-my-json-valid "^2.10.0"
- is-resolvable "^1.0.0"
- js-yaml "^3.2.5"
- json-stable-stringify "^1.0.0"
- lodash.clonedeep "^3.0.1"
- lodash.merge "^3.3.2"
- lodash.omit "^3.1.0"
- minimatch "^2.0.1"
- mkdirp "^0.5.0"
- object-assign "^2.0.0"
- optionator "^0.5.0"
- path-is-absolute "^1.0.0"
- path-is-inside "^1.0.1"
- shelljs "^0.3.0"
- strip-json-comments "~1.0.1"
- text-table "~0.2.0"
- to-double-quotes "^1.0.1"
- to-single-quotes "^1.0.3"
- user-home "^1.0.0"
- xml-escape "~1.0.0"
-
-espree@^2.2.4:
- version "2.2.5"
- resolved "https://registry.yarnpkg.com/espree/-/espree-2.2.5.tgz#df691b9310889402aeb29cc066708c56690b854b"
-
-esprima-fb@^15001.1.0-dev-harmony-fb:
- version "15001.1.0-dev-harmony-fb"
- resolved "https://registry.yarnpkg.com/esprima-fb/-/esprima-fb-15001.1.0-dev-harmony-fb.tgz#30a947303c6b8d5e955bee2b99b1d233206a6901"
-
-esprima-fb@~15001.1001.0-dev-harmony-fb:
- version "15001.1001.0-dev-harmony-fb"
- resolved "https://registry.yarnpkg.com/esprima-fb/-/esprima-fb-15001.1001.0-dev-harmony-fb.tgz#43beb57ec26e8cf237d3dd8b33e42533577f2659"
-
-esprima@^2.6.0:
- version "2.7.3"
- resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581"
-
-esprima@^3.1.3, esprima@~3.1.0:
- version "3.1.3"
- resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633"
-
-esprima@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804"
-
-esrecurse@^4.1.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.0.tgz#fa9568d98d3823f9a41d91e902dcab9ea6e5b163"
- dependencies:
- estraverse "^4.1.0"
- object-assign "^4.0.1"
-
-estraverse-fb@^1.3.1:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/estraverse-fb/-/estraverse-fb-1.3.2.tgz#d323a4cb5e5ac331cea033413a9253e1643e07c4"
-
-estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13"
-
-esutils@^1.1.6:
- version "1.1.6"
- resolved "https://registry.yarnpkg.com/esutils/-/esutils-1.1.6.tgz#c01ccaa9ae4b897c6d0c3e210ae52f3c7a844375"
-
-esutils@^2.0.0, esutils@^2.0.2:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b"
-
-etag@~1.8.1:
- version "1.8.1"
- resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
-
-event-emitter@~0.3.5:
- version "0.3.5"
- resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39"
- dependencies:
- d "1"
- es5-ext "~0.10.14"
-
-eventemitter3@1.x.x:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-1.2.0.tgz#1c86991d816ad1e504750e73874224ecf3bec508"
-
-events@^1.0.0, events@~1.1.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924"
-
-events@~1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/events/-/events-1.0.2.tgz#75849dcfe93d10fb057c30055afdbd51d06a8e24"
-
-eventsource@0.1.6:
- version "0.1.6"
- resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-0.1.6.tgz#0acede849ed7dd1ccc32c811bb11b944d4f29232"
- dependencies:
- original ">=0.0.5"
-
-evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02"
- dependencies:
- md5.js "^1.3.4"
- safe-buffer "^5.1.1"
-
-exec-sh@^0.2.0:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.1.tgz#163b98a6e89e6b65b47c2a28d215bc1f63989c38"
- dependencies:
- merge "^1.1.3"
-
-exenv@^1.2.0:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/exenv/-/exenv-1.2.2.tgz#2ae78e85d9894158670b03d47bec1f03bd91bb9d"
-
-expand-brackets@^0.1.4:
- version "0.1.5"
- resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b"
- dependencies:
- is-posix-bracket "^0.1.0"
-
-expand-range@^1.8.1:
- version "1.8.2"
- resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337"
- dependencies:
- fill-range "^2.1.0"
-
-expand-tilde@^1.2.2:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-1.2.2.tgz#0b81eba897e5a3d31d1c3d102f8f01441e559449"
- dependencies:
- os-homedir "^1.0.1"
-
-expand-tilde@^2.0.2:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502"
- dependencies:
- homedir-polyfill "^1.0.1"
-
-express@^4.13.3:
- version "4.16.2"
- resolved "https://registry.yarnpkg.com/express/-/express-4.16.2.tgz#e35c6dfe2d64b7dca0a5cd4f21781be3299e076c"
- dependencies:
- accepts "~1.3.4"
- array-flatten "1.1.1"
- body-parser "1.18.2"
- content-disposition "0.5.2"
- content-type "~1.0.4"
- cookie "0.3.1"
- cookie-signature "1.0.6"
- debug "2.6.9"
- depd "~1.1.1"
- encodeurl "~1.0.1"
- escape-html "~1.0.3"
- etag "~1.8.1"
- finalhandler "1.1.0"
- fresh "0.5.2"
- merge-descriptors "1.0.1"
- methods "~1.1.2"
- on-finished "~2.3.0"
- parseurl "~1.3.2"
- path-to-regexp "0.1.7"
- proxy-addr "~2.0.2"
- qs "6.5.1"
- range-parser "~1.2.0"
- safe-buffer "5.1.1"
- send "0.16.1"
- serve-static "1.13.1"
- setprototypeof "1.1.0"
- statuses "~1.3.1"
- type-is "~1.6.15"
- utils-merge "1.0.1"
- vary "~1.1.2"
-
-extend@^3.0.0, extend@~3.0.0, extend@~3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444"
-
-extglob@^0.3.1:
- version "0.3.2"
- resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1"
- dependencies:
- is-extglob "^1.0.0"
-
-extsprintf@1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"
-
-extsprintf@^1.2.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f"
-
-fancy-log@^1.1.0:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.3.1.tgz#c4a3462ba14adf5dfbab79731fd3844a2069cbbb"
- dependencies:
- ansi-gray "^0.1.1"
- time-stamp "^1.0.0"
-
-fast-deep-equal@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz#96256a3bc975595eb36d82e9929d060d893439ff"
-
-fast-json-stable-stringify@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2"
-
-fast-levenshtein@~1.0.0:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-1.0.7.tgz#0178dcdee023b92905193af0959e8a7639cfdcb9"
-
-fast-levenshtein@~2.0.4:
- version "2.0.6"
- resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
-
-fastparse@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.1.tgz#d1e2643b38a94d7583b479060e6c4affc94071f8"
-
-faye-websocket@^0.10.0:
- version "0.10.0"
- resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4"
- dependencies:
- websocket-driver ">=0.5.1"
-
-faye-websocket@~0.11.0:
- version "0.11.1"
- resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.1.tgz#f0efe18c4f56e4f40afc7e06c719fd5ee6188f38"
- dependencies:
- websocket-driver ">=0.5.1"
-
-fb-watchman@^1.8.0:
- version "1.9.2"
- resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-1.9.2.tgz#a24cf47827f82d38fb59a69ad70b76e3b6ae7383"
- dependencies:
- bser "1.0.2"
-
-fb-watchman@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.0.tgz#54e9abf7dfa2f26cd9b1636c588c1afc05de5d58"
- dependencies:
- bser "^2.0.0"
-
-fbjs@^0.8.16, fbjs@^0.8.5, fbjs@^0.8.7, fbjs@^0.8.9:
- version "0.8.16"
- resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.16.tgz#5e67432f550dc41b572bf55847b8aca64e5337db"
- dependencies:
- core-js "^1.0.0"
- isomorphic-fetch "^2.1.1"
- loose-envify "^1.0.0"
- object-assign "^4.1.0"
- promise "^7.1.1"
- setimmediate "^1.0.5"
- ua-parser-js "^0.7.9"
-
-figures@^1.3.5:
- version "1.7.0"
- resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e"
- dependencies:
- escape-string-regexp "^1.0.5"
- object-assign "^4.1.0"
-
-file-entry-cache@^1.1.1:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-1.3.1.tgz#44c61ea607ae4be9c1402f41f44270cbfe334ff8"
- dependencies:
- flat-cache "^1.2.1"
- object-assign "^4.0.1"
-
-filename-regex@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26"
-
-fileset@^2.0.2:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/fileset/-/fileset-2.0.3.tgz#8e7548a96d3cc2327ee5e674168723a333bba2a0"
- dependencies:
- glob "^7.0.3"
- minimatch "^3.0.3"
-
-filesize@~2.0.0:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/filesize/-/filesize-2.0.4.tgz#7805941c60fcdfe63f46d7ea358c59ade11c1325"
-
-fill-range@^2.1.0:
- version "2.2.3"
- resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723"
- dependencies:
- is-number "^2.1.0"
- isobject "^2.0.0"
- randomatic "^1.1.3"
- repeat-element "^1.1.2"
- repeat-string "^1.5.2"
-
-finalhandler@1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.0.tgz#ce0b6855b45853e791b2fcc680046d88253dd7f5"
- dependencies:
- debug "2.6.9"
- encodeurl "~1.0.1"
- escape-html "~1.0.3"
- on-finished "~2.3.0"
- parseurl "~1.3.2"
- statuses "~1.3.1"
- unpipe "~1.0.0"
-
-find-cache-dir@^0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-0.1.1.tgz#c8defae57c8a52a8a784f9e31c57c742e993a0b9"
- dependencies:
- commondir "^1.0.1"
- mkdirp "^0.5.1"
- pkg-dir "^1.0.0"
-
-find-index@^0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/find-index/-/find-index-0.1.1.tgz#675d358b2ca3892d795a1ab47232f8b6e2e0dde4"
-
-find-up@^1.0.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f"
- dependencies:
- path-exists "^2.0.0"
- pinkie-promise "^2.0.0"
-
-find-up@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7"
- dependencies:
- locate-path "^2.0.0"
-
-findup-sync@^0.4.2:
- version "0.4.3"
- resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-0.4.3.tgz#40043929e7bc60adf0b7f4827c4c6e75a0deca12"
- dependencies:
- detect-file "^0.1.0"
- is-glob "^2.0.1"
- micromatch "^2.3.7"
- resolve-dir "^0.1.0"
-
-fined@^1.0.1:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/fined/-/fined-1.1.0.tgz#b37dc844b76a2f5e7081e884f7c0ae344f153476"
- dependencies:
- expand-tilde "^2.0.2"
- is-plain-object "^2.0.3"
- object.defaults "^1.1.0"
- object.pick "^1.2.0"
- parse-filepath "^1.0.1"
-
-first-chunk-stream@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz#59bfb50cd905f60d7c394cd3d9acaab4e6ad934e"
-
-flagged-respawn@^0.3.2:
- version "0.3.2"
- resolved "https://registry.yarnpkg.com/flagged-respawn/-/flagged-respawn-0.3.2.tgz#ff191eddcd7088a675b2610fffc976be9b8074b5"
-
-flat-cache@^1.2.1:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.3.0.tgz#d3030b32b38154f4e3b7e9c709f490f7ef97c481"
- dependencies:
- circular-json "^0.3.1"
- del "^2.0.2"
- graceful-fs "^4.1.2"
- write "^0.2.1"
-
-flatten@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782"
-
-for-in@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
-
-for-own@^0.1.4:
- version "0.1.5"
- resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce"
- dependencies:
- for-in "^1.0.1"
-
-for-own@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b"
- dependencies:
- for-in "^1.0.1"
-
-foreach@^2.0.5:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99"
-
-forever-agent@~0.6.1:
- version "0.6.1"
- resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
-
-form-data@~2.1.1:
- version "2.1.4"
- resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1"
- dependencies:
- asynckit "^0.4.0"
- combined-stream "^1.0.5"
- mime-types "^2.1.12"
-
-form-data@~2.3.1:
- version "2.3.1"
- resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.1.tgz#6fb94fbd71885306d73d15cc497fe4cc4ecd44bf"
- dependencies:
- asynckit "^0.4.0"
- combined-stream "^1.0.5"
- mime-types "^2.1.12"
-
-forwarded@~0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84"
-
-fresh@0.5.2:
- version "0.5.2"
- resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7"
-
-fs-exists-sync@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz#982d6893af918e72d08dec9e8673ff2b5a8d6add"
-
-fs-readdir-recursive@^0.1.0:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-0.1.2.tgz#315b4fb8c1ca5b8c47defef319d073dad3568059"
-
-fs.realpath@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
-
-fsevents@^1.0.0:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.3.tgz#11f82318f5fe7bb2cd22965a108e9306208216d8"
- dependencies:
- nan "^2.3.0"
- node-pre-gyp "^0.6.39"
-
-fstream-ignore@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105"
- dependencies:
- fstream "^1.0.0"
- inherits "2"
- minimatch "^3.0.0"
-
-fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2:
- version "1.0.11"
- resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171"
- dependencies:
- graceful-fs "^4.1.2"
- inherits "~2.0.0"
- mkdirp ">=0.5 0"
- rimraf "2"
-
-function-bind@^1.0.2:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
-
-gauge@~2.7.3:
- version "2.7.4"
- resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7"
- dependencies:
- aproba "^1.0.3"
- console-control-strings "^1.0.0"
- has-unicode "^2.0.0"
- object-assign "^4.1.0"
- signal-exit "^3.0.0"
- string-width "^1.0.1"
- strip-ansi "^3.0.1"
- wide-align "^1.1.0"
-
-gaze@^0.5.1:
- version "0.5.2"
- resolved "https://registry.yarnpkg.com/gaze/-/gaze-0.5.2.tgz#40b709537d24d1d45767db5a908689dfe69ac44f"
- dependencies:
- globule "~0.1.0"
-
-generate-function@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74"
-
-generate-object-property@^1.1.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0"
- dependencies:
- is-property "^1.0.0"
-
-get-caller-file@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5"
-
-get-imports@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/get-imports/-/get-imports-1.0.0.tgz#47c0b4ee989351642c54977193bf4fcaabf5378f"
- dependencies:
- array-uniq "^1.0.1"
- import-regex "^1.1.0"
-
-get-stdin@^3.0.0:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-3.0.2.tgz#c1ced24b9039b38ded85bdf161e57713b6dd4abe"
-
-get-stdin@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe"
-
-getpass@^0.1.1:
- version "0.1.7"
- resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa"
- dependencies:
- assert-plus "^1.0.0"
-
-glob-base@^0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4"
- dependencies:
- glob-parent "^2.0.0"
- is-glob "^2.0.0"
-
-glob-parent@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28"
- dependencies:
- is-glob "^2.0.0"
-
-glob-stream@^3.1.5:
- version "3.1.18"
- resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-3.1.18.tgz#9170a5f12b790306fdfe598f313f8f7954fd143b"
- dependencies:
- glob "^4.3.1"
- glob2base "^0.0.12"
- minimatch "^2.0.1"
- ordered-read-streams "^0.1.0"
- through2 "^0.6.1"
- unique-stream "^1.0.0"
-
-glob-watcher@^0.0.6:
- version "0.0.6"
- resolved "https://registry.yarnpkg.com/glob-watcher/-/glob-watcher-0.0.6.tgz#b95b4a8df74b39c83298b0c05c978b4d9a3b710b"
- dependencies:
- gaze "^0.5.1"
-
-glob2base@^0.0.12:
- version "0.0.12"
- resolved "https://registry.yarnpkg.com/glob2base/-/glob2base-0.0.12.tgz#9d419b3e28f12e83a362164a277055922c9c0d56"
- dependencies:
- find-index "^0.1.1"
-
-glob@^4.0.5, glob@^4.3.1:
- version "4.5.3"
- resolved "https://registry.yarnpkg.com/glob/-/glob-4.5.3.tgz#c6cb73d3226c1efef04de3c56d012f03377ee15f"
- dependencies:
- inflight "^1.0.4"
- inherits "2"
- minimatch "^2.0.1"
- once "^1.3.0"
-
-glob@^5.0.14, glob@^5.0.15, glob@^5.0.3:
- version "5.0.15"
- resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1"
- dependencies:
- inflight "^1.0.4"
- inherits "2"
- minimatch "2 || 3"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
-glob@^7.0.3, glob@^7.0.5, glob@^7.1.0:
- version "7.1.2"
- resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15"
- dependencies:
- fs.realpath "^1.0.0"
- inflight "^1.0.4"
- inherits "2"
- minimatch "^3.0.4"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
-glob@~3.1.21:
- version "3.1.21"
- resolved "https://registry.yarnpkg.com/glob/-/glob-3.1.21.tgz#d29e0a055dea5138f4d07ed40e8982e83c2066cd"
- dependencies:
- graceful-fs "~1.2.0"
- inherits "1"
- minimatch "~0.2.11"
-
-global-modules@^0.2.3:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-0.2.3.tgz#ea5a3bed42c6d6ce995a4f8a1269b5dae223828d"
- dependencies:
- global-prefix "^0.1.4"
- is-windows "^0.2.0"
-
-global-prefix@^0.1.4:
- version "0.1.5"
- resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-0.1.5.tgz#8d3bc6b8da3ca8112a160d8d496ff0462bfef78f"
- dependencies:
- homedir-polyfill "^1.0.0"
- ini "^1.3.4"
- is-windows "^0.2.0"
- which "^1.2.12"
-
-global@^4.3.0:
- version "4.3.2"
- resolved "https://registry.yarnpkg.com/global/-/global-4.3.2.tgz#e76989268a6c74c38908b1305b10fc0e394e9d0f"
- dependencies:
- min-document "^2.19.0"
- process "~0.5.1"
-
-globals@^6.4.0:
- version "6.4.1"
- resolved "https://registry.yarnpkg.com/globals/-/globals-6.4.1.tgz#8498032b3b6d1cc81eebc5f79690d8fe29fabf4f"
-
-globals@^8.11.0:
- version "8.18.0"
- resolved "https://registry.yarnpkg.com/globals/-/globals-8.18.0.tgz#93d4a62bdcac38cfafafc47d6b034768cb0ffcb4"
-
-globals@^9.18.0:
- version "9.18.0"
- resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a"
-
-globby@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/globby/-/globby-2.1.0.tgz#9e9192bcd33f4ab6a4f894e5e7ea8b713213c482"
- dependencies:
- array-union "^1.0.1"
- async "^1.2.1"
- glob "^5.0.3"
- object-assign "^3.0.0"
-
-globby@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d"
- dependencies:
- array-union "^1.0.1"
- arrify "^1.0.0"
- glob "^7.0.3"
- object-assign "^4.0.1"
- pify "^2.0.0"
- pinkie-promise "^2.0.0"
-
-globule@~0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/globule/-/globule-0.1.0.tgz#d9c8edde1da79d125a151b79533b978676346ae5"
- dependencies:
- glob "~3.1.21"
- lodash "~1.0.1"
- minimatch "~0.2.11"
-
-glogg@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/glogg/-/glogg-1.0.0.tgz#7fe0f199f57ac906cf512feead8f90ee4a284fc5"
- dependencies:
- sparkles "^1.0.0"
-
-graceful-fs@^3.0.0:
- version "3.0.11"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-3.0.11.tgz#7613c778a1afea62f25c630a086d7f3acbbdd818"
- dependencies:
- natives "^1.1.0"
-
-graceful-fs@^4.1.2, graceful-fs@^4.1.4, graceful-fs@^4.1.6:
- version "4.1.11"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658"
-
-graceful-fs@~1.2.0:
- version "1.2.3"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-1.2.3.tgz#15a4806a57547cb2d2dbf27f42e89a8c3451b364"
-
-graceful-fs@~2.0.0:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-2.0.3.tgz#7cd2cdb228a4a3f36e95efa6cc142de7d1a136d0"
-
-"graceful-readlink@>= 1.0.0":
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725"
-
-growly@^1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081"
-
-gulp-babel@^6.0.0:
- version "6.1.2"
- resolved "https://registry.yarnpkg.com/gulp-babel/-/gulp-babel-6.1.2.tgz#7c0176e4ba3f244c60588a0c4b320a45d1adefce"
- dependencies:
- babel-core "^6.0.2"
- gulp-util "^3.0.0"
- object-assign "^4.0.1"
- replace-ext "0.0.1"
- through2 "^2.0.0"
- vinyl-sourcemaps-apply "^0.2.0"
-
-gulp-concat-css@^2.2.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/gulp-concat-css/-/gulp-concat-css-2.3.0.tgz#4c1586121a8411ff4b2dc44fcfa4dc740e8fe1b6"
- dependencies:
- gulp-util "~3.0.1"
- lodash.defaults "^3.0.0"
- parse-import "^2.0.0"
- rework "~1.0.0"
- rework-import "^2.0.0"
- rework-plugin-url "^1.0.1"
- through2 "~1.1.1"
-
-gulp-cssmin@^0.1.7:
- version "0.1.7"
- resolved "https://registry.yarnpkg.com/gulp-cssmin/-/gulp-cssmin-0.1.7.tgz#f576fe5211d107baa9401504249bf87aed1556bd"
- dependencies:
- clean-css "^3.1.9"
- filesize "~2.0.0"
- graceful-fs "~2.0.0"
- gulp-rename "~1.1.0"
- gulp-util "~2.2.0"
- map-stream "0.0.4"
- temp-write "~0.1.0"
-
-gulp-rename@~1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/gulp-rename/-/gulp-rename-1.1.0.tgz#93090aaaf4d386c07f20538a6888f15efba727a1"
- dependencies:
- map-stream ">=0.0.4"
-
-gulp-shell@^0.5.2:
- version "0.5.2"
- resolved "https://registry.yarnpkg.com/gulp-shell/-/gulp-shell-0.5.2.tgz#a4959ca0651ad1c7bbfe70b2d0adbbb4e1aea98d"
- dependencies:
- async "^1.5.0"
- gulp-util "^3.0.7"
- lodash "^4.0.0"
- through2 "^2.0.0"
-
-gulp-util@^3.0.0, gulp-util@^3.0.7, gulp-util@~3.0.1:
- version "3.0.8"
- resolved "https://registry.yarnpkg.com/gulp-util/-/gulp-util-3.0.8.tgz#0054e1e744502e27c04c187c3ecc505dd54bbb4f"
- dependencies:
- array-differ "^1.0.0"
- array-uniq "^1.0.2"
- beeper "^1.0.0"
- chalk "^1.0.0"
- dateformat "^2.0.0"
- fancy-log "^1.1.0"
- gulplog "^1.0.0"
- has-gulplog "^0.1.0"
- lodash._reescape "^3.0.0"
- lodash._reevaluate "^3.0.0"
- lodash._reinterpolate "^3.0.0"
- lodash.template "^3.0.0"
- minimist "^1.1.0"
- multipipe "^0.1.2"
- object-assign "^3.0.0"
- replace-ext "0.0.1"
- through2 "^2.0.0"
- vinyl "^0.5.0"
-
-gulp-util@~2.2.0:
- version "2.2.20"
- resolved "https://registry.yarnpkg.com/gulp-util/-/gulp-util-2.2.20.tgz#d7146e5728910bd8f047a6b0b1e549bc22dbd64c"
- dependencies:
- chalk "^0.5.0"
- dateformat "^1.0.7-1.2.3"
- lodash._reinterpolate "^2.4.1"
- lodash.template "^2.4.1"
- minimist "^0.2.0"
- multipipe "^0.1.0"
- through2 "^0.5.0"
- vinyl "^0.2.1"
-
-gulp@^3.9.1:
- version "3.9.1"
- resolved "https://registry.yarnpkg.com/gulp/-/gulp-3.9.1.tgz#571ce45928dd40af6514fc4011866016c13845b4"
- dependencies:
- archy "^1.0.0"
- chalk "^1.0.0"
- deprecated "^0.0.1"
- gulp-util "^3.0.0"
- interpret "^1.0.0"
- liftoff "^2.1.0"
- minimist "^1.1.0"
- orchestrator "^0.3.0"
- pretty-hrtime "^1.0.0"
- semver "^4.1.0"
- tildify "^1.0.0"
- v8flags "^2.0.2"
- vinyl-fs "^0.3.0"
-
-gulplog@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/gulplog/-/gulplog-1.0.0.tgz#e28c4d45d05ecbbed818363ce8f9c5926229ffe5"
- dependencies:
- glogg "^1.0.0"
-
-handlebars@^4.0.0, handlebars@^4.0.3:
- version "4.0.11"
- resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.11.tgz#630a35dfe0294bc281edae6ffc5d329fc7982dcc"
- dependencies:
- async "^1.4.0"
- optimist "^0.6.1"
- source-map "^0.4.4"
- optionalDependencies:
- uglify-js "^2.6"
-
-har-schema@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e"
-
-har-schema@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92"
-
-har-validator@~4.2.1:
- version "4.2.1"
- resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a"
- dependencies:
- ajv "^4.9.1"
- har-schema "^1.0.5"
-
-har-validator@~5.0.3:
- version "5.0.3"
- resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.0.3.tgz#ba402c266194f15956ef15e0fcf242993f6a7dfd"
- dependencies:
- ajv "^5.1.0"
- har-schema "^2.0.0"
-
-has-ansi@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-0.1.0.tgz#84f265aae8c0e6a88a12d7022894b7568894c62e"
- dependencies:
- ansi-regex "^0.2.0"
-
-has-ansi@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
- dependencies:
- ansi-regex "^2.0.0"
-
-has-flag@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa"
-
-has-flag@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51"
-
-has-gulplog@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/has-gulplog/-/has-gulplog-0.1.0.tgz#6414c82913697da51590397dafb12f22967811ce"
- dependencies:
- sparkles "^1.0.0"
-
-has-unicode@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
-
-has@^1.0.0, has@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28"
- dependencies:
- function-bind "^1.0.2"
-
-hash-base@^2.0.0:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-2.0.2.tgz#66ea1d856db4e8a5470cadf6fce23ae5244ef2e1"
- dependencies:
- inherits "^2.0.1"
-
-hash-base@^3.0.0:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918"
- dependencies:
- inherits "^2.0.1"
- safe-buffer "^5.0.1"
-
-hash.js@^1.0.0, hash.js@^1.0.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.3.tgz#340dedbe6290187151c1ea1d777a3448935df846"
- dependencies:
- inherits "^2.0.3"
- minimalistic-assert "^1.0.0"
-
-hawk@3.1.3, hawk@~3.1.3:
- version "3.1.3"
- resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4"
- dependencies:
- boom "2.x.x"
- cryptiles "2.x.x"
- hoek "2.x.x"
- sntp "1.x.x"
-
-hawk@~6.0.2:
- version "6.0.2"
- resolved "https://registry.yarnpkg.com/hawk/-/hawk-6.0.2.tgz#af4d914eb065f9b5ce4d9d11c1cb2126eecc3038"
- dependencies:
- boom "4.x.x"
- cryptiles "3.x.x"
- hoek "4.x.x"
- sntp "2.x.x"
-
-history@3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/history/-/history-3.0.0.tgz#02cff4e6f69dc62dd81161104a63f5b85ead0c85"
- dependencies:
- invariant "^2.0.0"
- query-string "^4.1.0"
- warning "^2.0.0"
-
-history@^3.0.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/history/-/history-3.3.0.tgz#fcedcce8f12975371545d735461033579a6dae9c"
- dependencies:
- invariant "^2.2.1"
- loose-envify "^1.2.0"
- query-string "^4.2.2"
- warning "^3.0.0"
-
-hmac-drbg@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1"
- dependencies:
- hash.js "^1.0.3"
- minimalistic-assert "^1.0.0"
- minimalistic-crypto-utils "^1.0.1"
-
-hoek@2.x.x:
- version "2.16.3"
- resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed"
-
-hoek@4.x.x:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.0.tgz#72d9d0754f7fe25ca2d01ad8f8f9a9449a89526d"
-
-hoist-non-react-statics@^1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-1.2.0.tgz#aa448cf0986d55cc40773b17174b7dd066cb7cfb"
-
-home-or-tmp@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-1.0.0.tgz#4b9f1e40800c3e50c6c27f781676afcce71f3985"
- dependencies:
- os-tmpdir "^1.0.1"
- user-home "^1.1.1"
-
-home-or-tmp@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8"
- dependencies:
- os-homedir "^1.0.0"
- os-tmpdir "^1.0.1"
-
-homedir-polyfill@^1.0.0, homedir-polyfill@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz#4c2bbc8a758998feebf5ed68580f76d46768b4bc"
- dependencies:
- parse-passwd "^1.0.0"
-
-hosted-git-info@^2.1.4:
- version "2.5.0"
- resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c"
-
-html-comment-regex@^1.1.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.1.tgz#668b93776eaae55ebde8f3ad464b307a4963625e"
-
-html-encoding-sniffer@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8"
- dependencies:
- whatwg-encoding "^1.0.1"
-
-htmlescape@^1.1.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/htmlescape/-/htmlescape-1.1.1.tgz#3a03edc2214bca3b66424a3e7959349509cb0351"
-
-http-errors@1.6.2, http-errors@~1.6.2:
- version "1.6.2"
- resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.2.tgz#0a002cc85707192a7e7946ceedc11155f60ec736"
- dependencies:
- depd "1.1.1"
- inherits "2.0.3"
- setprototypeof "1.0.3"
- statuses ">= 1.3.1 < 2"
-
-http-parser-js@>=0.4.0:
- version "0.4.9"
- resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.9.tgz#ea1a04fb64adff0242e9974f297dd4c3cad271e1"
-
-http-proxy-middleware@~0.17.1:
- version "0.17.4"
- resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.17.4.tgz#642e8848851d66f09d4f124912846dbaeb41b833"
- dependencies:
- http-proxy "^1.16.2"
- is-glob "^3.1.0"
- lodash "^4.17.2"
- micromatch "^2.3.11"
-
-http-proxy@^1.16.2:
- version "1.16.2"
- resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.16.2.tgz#06dff292952bf64dbe8471fa9df73066d4f37742"
- dependencies:
- eventemitter3 "1.x.x"
- requires-port "1.x.x"
-
-http-signature@~1.1.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf"
- dependencies:
- assert-plus "^0.2.0"
- jsprim "^1.2.2"
- sshpk "^1.7.0"
-
-http-signature@~1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1"
- dependencies:
- assert-plus "^1.0.0"
- jsprim "^1.2.2"
- sshpk "^1.7.0"
-
-https-browserify@0.0.1, https-browserify@~0.0.0:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-0.0.1.tgz#3f91365cabe60b77ed0ebba24b454e3e09d95a82"
-
-https-browserify@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73"
-
-hyphenate-style-name@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/hyphenate-style-name/-/hyphenate-style-name-1.0.2.tgz#31160a36930adaf1fc04c6074f7eb41465d4ec4b"
-
-iconv-lite@0.4.19, iconv-lite@^0.4.5, iconv-lite@~0.4.13:
- version "0.4.19"
- resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b"
-
-icss-replace-symbols@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded"
-
-ieee754@^1.1.4:
- version "1.1.8"
- resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4"
-
-import-regex@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/import-regex/-/import-regex-1.1.0.tgz#a55c52e4c705c765ca210e9242a06bbcc8aa7f66"
-
-indent-string@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80"
- dependencies:
- repeating "^2.0.0"
-
-indexes-of@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607"
-
-indexof@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d"
-
-inflight@^1.0.4:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
- dependencies:
- once "^1.3.0"
- wrappy "1"
-
-inherits@1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/inherits/-/inherits-1.0.2.tgz#ca4309dadee6b54cc0b8d247e8d7c7a0975bdc9b"
-
-inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
-
-inherits@2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1"
-
-ini@^1.3.4, ini@~1.3.0:
- version "1.3.5"
- resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
-
-inline-source-map@~0.5.0:
- version "0.5.0"
- resolved "https://registry.yarnpkg.com/inline-source-map/-/inline-source-map-0.5.0.tgz#4a4c5dd8e4fb5e9b3cda60c822dfadcaee66e0af"
- dependencies:
- source-map "~0.4.0"
-
-inline-source-map@~0.6.0:
- version "0.6.2"
- resolved "https://registry.yarnpkg.com/inline-source-map/-/inline-source-map-0.6.2.tgz#f9393471c18a79d1724f863fa38b586370ade2a5"
- dependencies:
- source-map "~0.5.3"
-
-inline-style-prefixer@^2.0.5:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/inline-style-prefixer/-/inline-style-prefixer-2.0.5.tgz#c153c7e88fd84fef5c602e95a8168b2770671fe7"
- dependencies:
- bowser "^1.0.0"
- hyphenate-style-name "^1.0.1"
-
-inquirer@^0.9.0:
- version "0.9.0"
- resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-0.9.0.tgz#7366e38a331e61904958ace5b2da4a9a5f636798"
- dependencies:
- ansi-regex "^2.0.0"
- chalk "^1.0.0"
- cli-width "^1.0.1"
- figures "^1.3.5"
- lodash "^3.3.1"
- readline2 "^0.1.1"
- run-async "^0.1.0"
- rx-lite "^2.5.2"
- strip-ansi "^3.0.0"
- through "^2.3.6"
-
-insert-module-globals@^6.4.1:
- version "6.6.3"
- resolved "https://registry.yarnpkg.com/insert-module-globals/-/insert-module-globals-6.6.3.tgz#20638e29a30f9ed1ca2e3a825fbc2cba5246ddfc"
- dependencies:
- JSONStream "^1.0.3"
- combine-source-map "~0.6.1"
- concat-stream "~1.4.1"
- is-buffer "^1.1.0"
- lexical-scope "^1.2.0"
- process "~0.11.0"
- through2 "^1.0.0"
- xtend "^4.0.0"
-
-insert-module-globals@^7.0.0:
- version "7.0.1"
- resolved "https://registry.yarnpkg.com/insert-module-globals/-/insert-module-globals-7.0.1.tgz#c03bf4e01cb086d5b5e5ace8ad0afe7889d638c3"
- dependencies:
- JSONStream "^1.0.3"
- combine-source-map "~0.7.1"
- concat-stream "~1.5.1"
- is-buffer "^1.1.0"
- lexical-scope "^1.2.0"
- process "~0.11.0"
- through2 "^2.0.0"
- xtend "^4.0.0"
-
-interpret@^0.6.4:
- version "0.6.6"
- resolved "https://registry.yarnpkg.com/interpret/-/interpret-0.6.6.tgz#fecd7a18e7ce5ca6abfb953e1f86213a49f1625b"
-
-interpret@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.1.0.tgz#7ed1b1410c6a0e0f78cf95d3b8440c63f78b8614"
-
-invariant@^2.0.0, invariant@^2.1.0, invariant@^2.2.1, invariant@^2.2.2:
- version "2.2.2"
- resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360"
- dependencies:
- loose-envify "^1.0.0"
-
-invert-kv@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6"
-
-ip-regex@^1.0.1:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-1.0.3.tgz#dc589076f659f419c222039a33316f1c7387effd"
-
-ipaddr.js@1.5.2:
- version "1.5.2"
- resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.5.2.tgz#d4b505bde9946987ccf0fc58d9010ff9607e3fa0"
-
-is-absolute-url@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6"
-
-is-absolute@^0.2.3:
- version "0.2.6"
- resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-0.2.6.tgz#20de69f3db942ef2d87b9c2da36f172235b1b5eb"
- dependencies:
- is-relative "^0.2.1"
- is-windows "^0.2.0"
-
-is-arrayish@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
-
-is-binary-path@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898"
- dependencies:
- binary-extensions "^1.0.0"
-
-is-buffer@^1.1.0, is-buffer@^1.1.5:
- version "1.1.6"
- resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
-
-is-builtin-module@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe"
- dependencies:
- builtin-modules "^1.0.0"
-
-is-ci@^1.0.9:
- version "1.0.10"
- resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.0.10.tgz#f739336b2632365061a9d48270cd56ae3369318e"
- dependencies:
- ci-info "^1.0.0"
-
-is-dotfile@^1.0.0:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1"
-
-is-equal-shallow@^0.1.3:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534"
- dependencies:
- is-primitive "^2.0.0"
-
-is-extendable@^0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89"
-
-is-extglob@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0"
-
-is-extglob@^2.1.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
-
-is-finite@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa"
- dependencies:
- number-is-nan "^1.0.0"
-
-is-fullwidth-code-point@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb"
- dependencies:
- number-is-nan "^1.0.0"
-
-is-function@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/is-function/-/is-function-1.0.1.tgz#12cfb98b65b57dd3d193a3121f5f6e2f437602b5"
-
-is-glob@^2.0.0, is-glob@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863"
- dependencies:
- is-extglob "^1.0.0"
-
-is-glob@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a"
- dependencies:
- is-extglob "^2.1.0"
-
-is-integer@^1.0.4:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/is-integer/-/is-integer-1.0.7.tgz#6bde81aacddf78b659b6629d629cadc51a886d5c"
- dependencies:
- is-finite "^1.0.0"
-
-is-my-json-valid@^2.10.0:
- version "2.16.1"
- resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.16.1.tgz#5a846777e2c2620d1e69104e5d3a03b1f6088f11"
- dependencies:
- generate-function "^2.0.0"
- generate-object-property "^1.1.0"
- jsonpointer "^4.0.0"
- xtend "^4.0.0"
-
-is-number@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f"
- dependencies:
- kind-of "^3.0.2"
-
-is-number@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195"
- dependencies:
- kind-of "^3.0.2"
-
-is-path-cwd@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d"
-
-is-path-in-cwd@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc"
- dependencies:
- is-path-inside "^1.0.0"
-
-is-path-inside@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036"
- dependencies:
- path-is-inside "^1.0.1"
-
-is-plain-obj@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e"
-
-is-plain-object@^2.0.1, is-plain-object@^2.0.3:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"
- dependencies:
- isobject "^3.0.1"
-
-is-posix-bracket@^0.1.0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4"
-
-is-primitive@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575"
-
-is-property@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84"
-
-is-relative@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-0.2.1.tgz#d27f4c7d516d175fb610db84bbeef23c3bc97aa5"
- dependencies:
- is-unc-path "^0.1.1"
-
-is-resolvable@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.0.0.tgz#8df57c61ea2e3c501408d100fb013cf8d6e0cc62"
- dependencies:
- tryit "^1.0.1"
-
-is-stream@^1.0.1:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
-
-is-svg@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-2.1.0.tgz#cf61090da0d9efbcab8722deba6f032208dbb0e9"
- dependencies:
- html-comment-regex "^1.1.0"
-
-is-typedarray@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
-
-is-unc-path@^0.1.1:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-0.1.2.tgz#6ab053a72573c10250ff416a3814c35178af39b9"
- dependencies:
- unc-path-regex "^0.1.0"
-
-is-utf8@^0.2.0:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72"
-
-is-windows@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-0.2.0.tgz#de1aa6d63ea29dd248737b69f1ff8b8002d2108c"
-
-isarray@0.0.1, isarray@~0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
-
-isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
-
-isexe@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
-
-isobject@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89"
- dependencies:
- isarray "1.0.0"
-
-isobject@^3.0.0, isobject@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
-
-isomorphic-fetch@^2.1.1:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9"
- dependencies:
- node-fetch "^1.0.1"
- whatwg-fetch ">=0.10.0"
-
-isstream@~0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
-
-istanbul-api@^1.1.0-alpha.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.2.1.tgz#0c60a0515eb11c7d65c6b50bba2c6e999acd8620"
- dependencies:
- async "^2.1.4"
- fileset "^2.0.2"
- istanbul-lib-coverage "^1.1.1"
- istanbul-lib-hook "^1.1.0"
- istanbul-lib-instrument "^1.9.1"
- istanbul-lib-report "^1.1.2"
- istanbul-lib-source-maps "^1.2.2"
- istanbul-reports "^1.1.3"
- js-yaml "^3.7.0"
- mkdirp "^0.5.1"
- once "^1.4.0"
-
-istanbul-lib-coverage@^1.0.0, istanbul-lib-coverage@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.1.1.tgz#73bfb998885299415c93d38a3e9adf784a77a9da"
-
-istanbul-lib-hook@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-1.1.0.tgz#8538d970372cb3716d53e55523dd54b557a8d89b"
- dependencies:
- append-transform "^0.4.0"
-
-istanbul-lib-instrument@^1.1.1, istanbul-lib-instrument@^1.7.5, istanbul-lib-instrument@^1.9.1:
- version "1.9.1"
- resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.9.1.tgz#250b30b3531e5d3251299fdd64b0b2c9db6b558e"
- dependencies:
- babel-generator "^6.18.0"
- babel-template "^6.16.0"
- babel-traverse "^6.18.0"
- babel-types "^6.18.0"
- babylon "^6.18.0"
- istanbul-lib-coverage "^1.1.1"
- semver "^5.3.0"
-
-istanbul-lib-report@^1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-1.1.2.tgz#922be27c13b9511b979bd1587359f69798c1d425"
- dependencies:
- istanbul-lib-coverage "^1.1.1"
- mkdirp "^0.5.1"
- path-parse "^1.0.5"
- supports-color "^3.1.2"
-
-istanbul-lib-source-maps@^1.2.2:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.2.tgz#750578602435f28a0c04ee6d7d9e0f2960e62c1c"
- dependencies:
- debug "^3.1.0"
- istanbul-lib-coverage "^1.1.1"
- mkdirp "^0.5.1"
- rimraf "^2.6.1"
- source-map "^0.5.3"
-
-istanbul-reports@^1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.1.3.tgz#3b9e1e8defb6d18b1d425da8e8b32c5a163f2d10"
- dependencies:
- handlebars "^4.0.3"
-
-jest-changed-files@^19.0.2:
- version "19.0.2"
- resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-19.0.2.tgz#16c54c84c3270be408e06d2e8af3f3e37a885824"
-
-jest-cli@^19.0.2:
- version "19.0.2"
- resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-19.0.2.tgz#cc3620b62acac5f2d93a548cb6ef697d4ec85443"
- dependencies:
- ansi-escapes "^1.4.0"
- callsites "^2.0.0"
- chalk "^1.1.1"
- graceful-fs "^4.1.6"
- is-ci "^1.0.9"
- istanbul-api "^1.1.0-alpha.1"
- istanbul-lib-coverage "^1.0.0"
- istanbul-lib-instrument "^1.1.1"
- jest-changed-files "^19.0.2"
- jest-config "^19.0.2"
- jest-environment-jsdom "^19.0.2"
- jest-haste-map "^19.0.0"
- jest-jasmine2 "^19.0.2"
- jest-message-util "^19.0.0"
- jest-regex-util "^19.0.0"
- jest-resolve-dependencies "^19.0.0"
- jest-runtime "^19.0.2"
- jest-snapshot "^19.0.2"
- jest-util "^19.0.2"
- micromatch "^2.3.11"
- node-notifier "^5.0.1"
- slash "^1.0.0"
- string-length "^1.0.1"
- throat "^3.0.0"
- which "^1.1.1"
- worker-farm "^1.3.1"
- yargs "^6.3.0"
-
-jest-config@^19.0.2:
- version "19.0.4"
- resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-19.0.4.tgz#42980211d46417e91ca7abffd086c270234f73fd"
- dependencies:
- chalk "^1.1.1"
- jest-environment-jsdom "^19.0.2"
- jest-environment-node "^19.0.2"
- jest-jasmine2 "^19.0.2"
- jest-regex-util "^19.0.0"
- jest-resolve "^19.0.2"
- jest-validate "^19.0.2"
- pretty-format "^19.0.0"
-
-jest-diff@^19.0.0:
- version "19.0.0"
- resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-19.0.0.tgz#d1563cfc56c8b60232988fbc05d4d16ed90f063c"
- dependencies:
- chalk "^1.1.3"
- diff "^3.0.0"
- jest-matcher-utils "^19.0.0"
- pretty-format "^19.0.0"
-
-jest-environment-jsdom@^19.0.2:
- version "19.0.2"
- resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-19.0.2.tgz#ceda859c4a4b94ab35e4de7dab54b926f293e4a3"
- dependencies:
- jest-mock "^19.0.0"
- jest-util "^19.0.2"
- jsdom "^9.11.0"
-
-jest-environment-node@^19.0.2:
- version "19.0.2"
- resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-19.0.2.tgz#6e84079db87ed21d0c05e1f9669f207b116fe99b"
- dependencies:
- jest-mock "^19.0.0"
- jest-util "^19.0.2"
-
-jest-file-exists@^19.0.0:
- version "19.0.0"
- resolved "https://registry.yarnpkg.com/jest-file-exists/-/jest-file-exists-19.0.0.tgz#cca2e587a11ec92e24cfeab3f8a94d657f3fceb8"
-
-jest-haste-map@^19.0.0:
- version "19.0.2"
- resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-19.0.2.tgz#286484c3a16e86da7872b0877c35dce30c3d6f07"
- dependencies:
- fb-watchman "^2.0.0"
- graceful-fs "^4.1.6"
- micromatch "^2.3.11"
- sane "~1.5.0"
- worker-farm "^1.3.1"
-
-jest-jasmine2@^19.0.2:
- version "19.0.2"
- resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-19.0.2.tgz#167991ac825981fb1a800af126e83afcca832c73"
- dependencies:
- graceful-fs "^4.1.6"
- jest-matcher-utils "^19.0.0"
- jest-matchers "^19.0.0"
- jest-message-util "^19.0.0"
- jest-snapshot "^19.0.2"
-
-jest-matcher-utils@^19.0.0:
- version "19.0.0"
- resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-19.0.0.tgz#5ecd9b63565d2b001f61fbf7ec4c7f537964564d"
- dependencies:
- chalk "^1.1.3"
- pretty-format "^19.0.0"
-
-jest-matchers@^19.0.0:
- version "19.0.0"
- resolved "https://registry.yarnpkg.com/jest-matchers/-/jest-matchers-19.0.0.tgz#c74ecc6ebfec06f384767ba4d6fa4a42d6755754"
- dependencies:
- jest-diff "^19.0.0"
- jest-matcher-utils "^19.0.0"
- jest-message-util "^19.0.0"
- jest-regex-util "^19.0.0"
-
-jest-message-util@^19.0.0:
- version "19.0.0"
- resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-19.0.0.tgz#721796b89c0e4d761606f9ba8cb828a3b6246416"
- dependencies:
- chalk "^1.1.1"
- micromatch "^2.3.11"
-
-jest-mock@^19.0.0:
- version "19.0.0"
- resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-19.0.0.tgz#67038641e9607ab2ce08ec4a8cb83aabbc899d01"
-
-jest-regex-util@^19.0.0:
- version "19.0.0"
- resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-19.0.0.tgz#b7754587112aede1456510bb1f6afe74ef598691"
-
-jest-resolve-dependencies@^19.0.0:
- version "19.0.0"
- resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-19.0.0.tgz#a741ad1fa094140e64ecf2642a504f834ece22ee"
- dependencies:
- jest-file-exists "^19.0.0"
-
-jest-resolve@^19.0.2:
- version "19.0.2"
- resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-19.0.2.tgz#5793575de4f07aec32f7d7ff0c6c181963eefb3c"
- dependencies:
- browser-resolve "^1.11.2"
- jest-haste-map "^19.0.0"
- resolve "^1.2.0"
-
-jest-runtime@^19.0.2:
- version "19.0.4"
- resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-19.0.4.tgz#f167d9f1347752f2027361067926485349fcc245"
- dependencies:
- babel-core "^6.0.0"
- babel-jest "^19.0.0"
- babel-plugin-istanbul "^4.0.0"
- chalk "^1.1.3"
- graceful-fs "^4.1.6"
- jest-config "^19.0.2"
- jest-file-exists "^19.0.0"
- jest-haste-map "^19.0.0"
- jest-regex-util "^19.0.0"
- jest-resolve "^19.0.2"
- jest-util "^19.0.2"
- json-stable-stringify "^1.0.1"
- micromatch "^2.3.11"
- strip-bom "3.0.0"
- yargs "^6.3.0"
-
-jest-snapshot@^19.0.2:
- version "19.0.2"
- resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-19.0.2.tgz#9c1b216214f7187c38bfd5c70b1efab16b0ff50b"
- dependencies:
- chalk "^1.1.3"
- jest-diff "^19.0.0"
- jest-file-exists "^19.0.0"
- jest-matcher-utils "^19.0.0"
- jest-util "^19.0.2"
- natural-compare "^1.4.0"
- pretty-format "^19.0.0"
-
-jest-util@^19.0.2:
- version "19.0.2"
- resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-19.0.2.tgz#e0a0232a2ab9e6b2b53668bdb3534c2b5977ed41"
- dependencies:
- chalk "^1.1.1"
- graceful-fs "^4.1.6"
- jest-file-exists "^19.0.0"
- jest-message-util "^19.0.0"
- jest-mock "^19.0.0"
- jest-validate "^19.0.2"
- leven "^2.0.0"
- mkdirp "^0.5.1"
-
-jest-validate@^19.0.2:
- version "19.0.2"
- resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-19.0.2.tgz#dc534df5f1278d5b63df32b14241d4dbf7244c0c"
- dependencies:
- chalk "^1.1.1"
- jest-matcher-utils "^19.0.0"
- leven "^2.0.0"
- pretty-format "^19.0.0"
-
-jquery@^2.1.4:
- version "2.2.4"
- resolved "https://registry.yarnpkg.com/jquery/-/jquery-2.2.4.tgz#2c89d6889b5eac522a7eea32c14521559c6cbf02"
-
-js-base64@^2.1.9:
- version "2.4.0"
- resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.4.0.tgz#9e566fee624751a1d720c966cd6226d29d4025aa"
-
-js-tokens@1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-1.0.1.tgz#cc435a5c8b94ad15acb7983140fc80182c89aeae"
-
-js-tokens@^3.0.0, js-tokens@^3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b"
-
-js-yaml@^3.2.5, js-yaml@^3.7.0:
- version "3.10.0"
- resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.10.0.tgz#2e78441646bd4682e963f22b6e92823c309c62dc"
- dependencies:
- argparse "^1.0.7"
- esprima "^4.0.0"
-
-js-yaml@~3.7.0:
- version "3.7.0"
- resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.7.0.tgz#5c967ddd837a9bfdca5f2de84253abe8a1c03b80"
- dependencies:
- argparse "^1.0.7"
- esprima "^2.6.0"
-
-jsbn@~0.1.0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
-
-jsdom@^9.11.0:
- version "9.12.0"
- resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-9.12.0.tgz#e8c546fffcb06c00d4833ca84410fed7f8a097d4"
- dependencies:
- abab "^1.0.3"
- acorn "^4.0.4"
- acorn-globals "^3.1.0"
- array-equal "^1.0.0"
- content-type-parser "^1.0.1"
- cssom ">= 0.3.2 < 0.4.0"
- cssstyle ">= 0.2.37 < 0.3.0"
- escodegen "^1.6.1"
- html-encoding-sniffer "^1.0.1"
- nwmatcher ">= 1.3.9 < 2.0.0"
- parse5 "^1.5.1"
- request "^2.79.0"
- sax "^1.2.1"
- symbol-tree "^3.2.1"
- tough-cookie "^2.3.2"
- webidl-conversions "^4.0.0"
- whatwg-encoding "^1.0.1"
- whatwg-url "^4.3.0"
- xml-name-validator "^2.0.1"
-
-jsesc@^1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b"
-
-jsesc@~0.5.0:
- version "0.5.0"
- resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d"
-
-json-schema-traverse@^0.3.0:
- version "0.3.1"
- resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340"
-
-json-schema@0.2.3:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13"
-
-json-stable-stringify@^1.0.0, json-stable-stringify@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af"
- dependencies:
- jsonify "~0.0.0"
-
-json-stable-stringify@~0.0.0:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz#611c23e814db375527df851193db59dd2af27f45"
- dependencies:
- jsonify "~0.0.0"
-
-json-stringify-safe@~5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"
-
-json3@^3.3.2:
- version "3.3.2"
- resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1"
-
-json5@^0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/json5/-/json5-0.4.0.tgz#054352e4c4c80c86c0923877d449de176a732c8d"
-
-json5@^0.5.0, json5@^0.5.1:
- version "0.5.1"
- resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821"
-
-jsonify@~0.0.0:
- version "0.0.0"
- resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73"
-
-jsonparse@^1.2.0:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280"
-
-jsonpointer@^4.0.0:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9"
-
-jsprim@^1.2.2:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2"
- dependencies:
- assert-plus "1.0.0"
- extsprintf "1.3.0"
- json-schema "0.2.3"
- verror "1.10.0"
-
-jstransform@11:
- version "11.0.3"
- resolved "https://registry.yarnpkg.com/jstransform/-/jstransform-11.0.3.tgz#09a78993e0ae4d4ef4487f6155a91f6190cb4223"
- dependencies:
- base62 "^1.1.0"
- commoner "^0.10.1"
- esprima-fb "^15001.1.0-dev-harmony-fb"
- object-assign "^2.0.0"
- source-map "^0.4.2"
-
-jsx-loader@^0.13.2:
- version "0.13.2"
- resolved "https://registry.yarnpkg.com/jsx-loader/-/jsx-loader-0.13.2.tgz#9767f643975c78f5e5abeba9bc57885297e732d4"
- dependencies:
- jstransform "11"
- loader-utils "^0.2.2"
-
-keycode@^2.1.2:
- version "2.1.9"
- resolved "https://registry.yarnpkg.com/keycode/-/keycode-2.1.9.tgz#964a23c54e4889405b4861a5c9f0480d45141dfa"
-
-kind-of@^3.0.2:
- version "3.2.2"
- resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64"
- dependencies:
- is-buffer "^1.1.5"
-
-kind-of@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57"
- dependencies:
- is-buffer "^1.1.5"
-
-labeled-stream-splicer@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/labeled-stream-splicer/-/labeled-stream-splicer-1.0.2.tgz#4615331537784981e8fd264e1f3a434c4e0ddd65"
- dependencies:
- inherits "^2.0.1"
- isarray "~0.0.1"
- stream-splicer "^1.1.0"
-
-labeled-stream-splicer@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/labeled-stream-splicer/-/labeled-stream-splicer-2.0.0.tgz#a52e1d138024c00b86b1c0c91f677918b8ae0a59"
- dependencies:
- inherits "^2.0.1"
- isarray "~0.0.1"
- stream-splicer "^2.0.0"
-
-lazy-cache@^1.0.3:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e"
-
-lcid@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835"
- dependencies:
- invert-kv "^1.0.0"
-
-leven@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/leven/-/leven-1.0.2.tgz#9144b6eebca5f1d0680169f1a6770dcea60b75c3"
-
-leven@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580"
-
-levn@~0.2.5:
- version "0.2.5"
- resolved "https://registry.yarnpkg.com/levn/-/levn-0.2.5.tgz#ba8d339d0ca4a610e3a3f145b9caf48807155054"
- dependencies:
- prelude-ls "~1.1.0"
- type-check "~0.3.1"
-
-levn@~0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee"
- dependencies:
- prelude-ls "~1.1.2"
- type-check "~0.3.2"
-
-lexical-scope@^1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/lexical-scope/-/lexical-scope-1.2.0.tgz#fcea5edc704a4b3a8796cdca419c3a0afaf22df4"
- dependencies:
- astw "^2.0.0"
-
-liftoff@^2.1.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/liftoff/-/liftoff-2.3.0.tgz#a98f2ff67183d8ba7cfaca10548bd7ff0550b385"
- dependencies:
- extend "^3.0.0"
- findup-sync "^0.4.2"
- fined "^1.0.1"
- flagged-respawn "^0.3.2"
- lodash.isplainobject "^4.0.4"
- lodash.isstring "^4.0.1"
- lodash.mapvalues "^4.4.0"
- rechoir "^0.6.2"
- resolve "^1.1.7"
-
-load-json-file@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0"
- dependencies:
- graceful-fs "^4.1.2"
- parse-json "^2.2.0"
- pify "^2.0.0"
- pinkie-promise "^2.0.0"
- strip-bom "^2.0.0"
-
-loader-fs-cache@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/loader-fs-cache/-/loader-fs-cache-1.0.1.tgz#56e0bf08bd9708b26a765b68509840c8dec9fdbc"
- dependencies:
- find-cache-dir "^0.1.1"
- mkdirp "0.5.1"
-
-loader-utils@^0.2.11, loader-utils@^0.2.16, loader-utils@^0.2.2, loader-utils@~0.2.2:
- version "0.2.17"
- resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348"
- dependencies:
- big.js "^3.1.3"
- emojis-list "^2.0.0"
- json5 "^0.5.0"
- object-assign "^4.0.1"
-
-loader-utils@^1.0.2:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd"
- dependencies:
- big.js "^3.1.3"
- emojis-list "^2.0.0"
- json5 "^0.5.0"
-
-locate-path@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e"
- dependencies:
- p-locate "^2.0.0"
- path-exists "^3.0.0"
-
-lodash._arraycopy@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/lodash._arraycopy/-/lodash._arraycopy-3.0.0.tgz#76e7b7c1f1fb92547374878a562ed06a3e50f6e1"
-
-lodash._arrayeach@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/lodash._arrayeach/-/lodash._arrayeach-3.0.0.tgz#bab156b2a90d3f1bbd5c653403349e5e5933ef9e"
-
-lodash._arraymap@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/lodash._arraymap/-/lodash._arraymap-3.0.0.tgz#1a8fd0f4c0df4b61dea076d717cdc97f0a3c3e66"
-
-lodash._baseassign@^3.0.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e"
- dependencies:
- lodash._basecopy "^3.0.0"
- lodash.keys "^3.0.0"
-
-lodash._baseclone@^3.0.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/lodash._baseclone/-/lodash._baseclone-3.3.0.tgz#303519bf6393fe7e42f34d8b630ef7794e3542b7"
- dependencies:
- lodash._arraycopy "^3.0.0"
- lodash._arrayeach "^3.0.0"
- lodash._baseassign "^3.0.0"
- lodash._basefor "^3.0.0"
- lodash.isarray "^3.0.0"
- lodash.keys "^3.0.0"
-
-lodash._basecopy@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36"
-
-lodash._basedifference@^3.0.0:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/lodash._basedifference/-/lodash._basedifference-3.0.3.tgz#f2c204296c2a78e02b389081b6edcac933cf629c"
- dependencies:
- lodash._baseindexof "^3.0.0"
- lodash._cacheindexof "^3.0.0"
- lodash._createcache "^3.0.0"
-
-lodash._baseflatten@^3.0.0:
- version "3.1.4"
- resolved "https://registry.yarnpkg.com/lodash._baseflatten/-/lodash._baseflatten-3.1.4.tgz#0770ff80131af6e34f3b511796a7ba5214e65ff7"
- dependencies:
- lodash.isarguments "^3.0.0"
- lodash.isarray "^3.0.0"
-
-lodash._basefor@^3.0.0:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/lodash._basefor/-/lodash._basefor-3.0.3.tgz#7550b4e9218ef09fad24343b612021c79b4c20c2"
-
-lodash._baseindexof@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/lodash._baseindexof/-/lodash._baseindexof-3.1.0.tgz#fe52b53a1c6761e42618d654e4a25789ed61822c"
-
-lodash._basetostring@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz#d1861d877f824a52f669832dcaf3ee15566a07d5"
-
-lodash._basevalues@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz#5b775762802bde3d3297503e26300820fdf661b7"
-
-lodash._bindcallback@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz#e531c27644cf8b57a99e17ed95b35c748789392e"
-
-lodash._cacheindexof@^3.0.0:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/lodash._cacheindexof/-/lodash._cacheindexof-3.0.2.tgz#3dc69ac82498d2ee5e3ce56091bafd2adc7bde92"
-
-lodash._createassigner@^3.0.0:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/lodash._createassigner/-/lodash._createassigner-3.1.1.tgz#838a5bae2fdaca63ac22dee8e19fa4e6d6970b11"
- dependencies:
- lodash._bindcallback "^3.0.0"
- lodash._isiterateecall "^3.0.0"
- lodash.restparam "^3.0.0"
-
-lodash._createcache@^3.0.0:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/lodash._createcache/-/lodash._createcache-3.1.2.tgz#56d6a064017625e79ebca6b8018e17440bdcf093"
- dependencies:
- lodash._getnative "^3.0.0"
-
-lodash._createcompounder@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/lodash._createcompounder/-/lodash._createcompounder-3.0.0.tgz#5dd2cb55372d6e70e0e2392fb2304d6631091075"
- dependencies:
- lodash.deburr "^3.0.0"
- lodash.words "^3.0.0"
-
-lodash._escapehtmlchar@~2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/lodash._escapehtmlchar/-/lodash._escapehtmlchar-2.4.1.tgz#df67c3bb6b7e8e1e831ab48bfa0795b92afe899d"
- dependencies:
- lodash._htmlescapes "~2.4.1"
-
-lodash._escapestringchar@~2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/lodash._escapestringchar/-/lodash._escapestringchar-2.4.1.tgz#ecfe22618a2ade50bfeea43937e51df66f0edb72"
-
-lodash._getnative@^3.0.0:
- version "3.9.1"
- resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5"
-
-lodash._htmlescapes@~2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/lodash._htmlescapes/-/lodash._htmlescapes-2.4.1.tgz#32d14bf0844b6de6f8b62a051b4f67c228b624cb"
-
-lodash._isiterateecall@^3.0.0:
- version "3.0.9"
- resolved "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c"
-
-lodash._isnative@~2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/lodash._isnative/-/lodash._isnative-2.4.1.tgz#3ea6404b784a7be836c7b57580e1cdf79b14832c"
-
-lodash._objecttypes@~2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/lodash._objecttypes/-/lodash._objecttypes-2.4.1.tgz#7c0b7f69d98a1f76529f890b0cdb1b4dfec11c11"
-
-lodash._pickbyarray@^3.0.0:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/lodash._pickbyarray/-/lodash._pickbyarray-3.0.2.tgz#1f898d9607eb560b0e167384b77c7c6d108aa4c5"
-
-lodash._pickbycallback@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/lodash._pickbycallback/-/lodash._pickbycallback-3.0.0.tgz#ff61b9a017a7b3af7d30e6c53de28afa19b8750a"
- dependencies:
- lodash._basefor "^3.0.0"
- lodash.keysin "^3.0.0"
-
-lodash._reescape@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/lodash._reescape/-/lodash._reescape-3.0.0.tgz#2b1d6f5dfe07c8a355753e5f27fac7f1cde1616a"
-
-lodash._reevaluate@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz#58bc74c40664953ae0b124d806996daca431e2ed"
-
-lodash._reinterpolate@^2.4.1, lodash._reinterpolate@~2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-2.4.1.tgz#4f1227aa5a8711fc632f5b07a1f4607aab8b3222"
-
-lodash._reinterpolate@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d"
-
-lodash._reunescapedhtml@~2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/lodash._reunescapedhtml/-/lodash._reunescapedhtml-2.4.1.tgz#747c4fc40103eb3bb8a0976e571f7a2659e93ba7"
- dependencies:
- lodash._htmlescapes "~2.4.1"
- lodash.keys "~2.4.1"
-
-lodash._root@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/lodash._root/-/lodash._root-3.0.1.tgz#fba1c4524c19ee9a5f8136b4609f017cf4ded692"
-
-lodash._shimkeys@~2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/lodash._shimkeys/-/lodash._shimkeys-2.4.1.tgz#6e9cc9666ff081f0b5a6c978b83e242e6949d203"
- dependencies:
- lodash._objecttypes "~2.4.1"
-
-lodash.assign@^3.0.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-3.2.0.tgz#3ce9f0234b4b2223e296b8fa0ac1fee8ebca64fa"
- dependencies:
- lodash._baseassign "^3.0.0"
- lodash._createassigner "^3.0.0"
- lodash.keys "^3.0.0"
-
-lodash.assign@^4.0.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7"
-
-lodash.camelcase@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-3.0.1.tgz#932c8b87f8a4377897c67197533282f97aeac298"
- dependencies:
- lodash._createcompounder "^3.0.0"
-
-lodash.clonedeep@^3.0.1:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-3.0.2.tgz#a0a1e40d82a5ea89ff5b147b8444ed63d92827db"
- dependencies:
- lodash._baseclone "^3.0.0"
- lodash._bindcallback "^3.0.0"
-
-lodash.deburr@^3.0.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/lodash.deburr/-/lodash.deburr-3.2.0.tgz#6da8f54334a366a7cf4c4c76ef8d80aa1b365ed5"
- dependencies:
- lodash._root "^3.0.0"
-
-lodash.defaults@^3.0.0:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-3.1.2.tgz#c7308b18dbf8bc9372d701a73493c61192bd2e2c"
- dependencies:
- lodash.assign "^3.0.0"
- lodash.restparam "^3.0.0"
-
-lodash.defaults@~2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-2.4.1.tgz#a7e8885f05e68851144b6e12a8f3678026bc4c54"
- dependencies:
- lodash._objecttypes "~2.4.1"
- lodash.keys "~2.4.1"
-
-lodash.escape@^3.0.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-3.2.0.tgz#995ee0dc18c1b48cc92effae71a10aab5b487698"
- dependencies:
- lodash._root "^3.0.0"
-
-lodash.escape@~2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-2.4.1.tgz#2ce12c5e084db0a57dda5e5d1eeeb9f5d175a3b4"
- dependencies:
- lodash._escapehtmlchar "~2.4.1"
- lodash._reunescapedhtml "~2.4.1"
- lodash.keys "~2.4.1"
-
-lodash.isarguments@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a"
-
-lodash.isarray@^3.0.0:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55"
-
-lodash.isobject@~2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/lodash.isobject/-/lodash.isobject-2.4.1.tgz#5a2e47fe69953f1ee631a7eba1fe64d2d06558f5"
- dependencies:
- lodash._objecttypes "~2.4.1"
-
-lodash.isplainobject@^3.0.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-3.2.0.tgz#9a8238ae16b200432960cd7346512d0123fbf4c5"
- dependencies:
- lodash._basefor "^3.0.0"
- lodash.isarguments "^3.0.0"
- lodash.keysin "^3.0.0"
-
-lodash.isplainobject@^4.0.4:
- version "4.0.6"
- resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb"
-
-lodash.isstring@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451"
-
-lodash.istypedarray@^3.0.0:
- version "3.0.6"
- resolved "https://registry.yarnpkg.com/lodash.istypedarray/-/lodash.istypedarray-3.0.6.tgz#c9a477498607501d8e8494d283b87c39281cef62"
-
-lodash.keys@^3.0.0:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a"
- dependencies:
- lodash._getnative "^3.0.0"
- lodash.isarguments "^3.0.0"
- lodash.isarray "^3.0.0"
-
-lodash.keys@~2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-2.4.1.tgz#48dea46df8ff7632b10d706b8acb26591e2b3727"
- dependencies:
- lodash._isnative "~2.4.1"
- lodash._shimkeys "~2.4.1"
- lodash.isobject "~2.4.1"
-
-lodash.keysin@^3.0.0:
- version "3.0.8"
- resolved "https://registry.yarnpkg.com/lodash.keysin/-/lodash.keysin-3.0.8.tgz#22c4493ebbedb1427962a54b445b2c8a767fb47f"
- dependencies:
- lodash.isarguments "^3.0.0"
- lodash.isarray "^3.0.0"
-
-lodash.mapvalues@^4.4.0:
- version "4.6.0"
- resolved "https://registry.yarnpkg.com/lodash.mapvalues/-/lodash.mapvalues-4.6.0.tgz#1bafa5005de9dd6f4f26668c30ca37230cc9689c"
-
-lodash.memoize@^4.1.2:
- version "4.1.2"
- resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe"
-
-lodash.memoize@~3.0.3:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-3.0.4.tgz#2dcbd2c287cbc0a55cc42328bd0c736150d53e3f"
-
-lodash.merge@^3.3.2:
- version "3.3.2"
- resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-3.3.2.tgz#0d90d93ed637b1878437bb3e21601260d7afe994"
- dependencies:
- lodash._arraycopy "^3.0.0"
- lodash._arrayeach "^3.0.0"
- lodash._createassigner "^3.0.0"
- lodash._getnative "^3.0.0"
- lodash.isarguments "^3.0.0"
- lodash.isarray "^3.0.0"
- lodash.isplainobject "^3.0.0"
- lodash.istypedarray "^3.0.0"
- lodash.keys "^3.0.0"
- lodash.keysin "^3.0.0"
- lodash.toplainobject "^3.0.0"
-
-lodash.omit@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/lodash.omit/-/lodash.omit-3.1.0.tgz#897fe382e6413d9ac97c61f78ed1e057a00af9f3"
- dependencies:
- lodash._arraymap "^3.0.0"
- lodash._basedifference "^3.0.0"
- lodash._baseflatten "^3.0.0"
- lodash._bindcallback "^3.0.0"
- lodash._pickbyarray "^3.0.0"
- lodash._pickbycallback "^3.0.0"
- lodash.keysin "^3.0.0"
- lodash.restparam "^3.0.0"
-
-lodash.pickby@^4.0.0:
- version "4.6.0"
- resolved "https://registry.yarnpkg.com/lodash.pickby/-/lodash.pickby-4.6.0.tgz#7dea21d8c18d7703a27c704c15d3b84a67e33aff"
-
-lodash.restparam@^3.0.0:
- version "3.6.1"
- resolved "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805"
-
-lodash.template@^2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-2.4.1.tgz#9e611007edf629129a974ab3c48b817b3e1cf20d"
- dependencies:
- lodash._escapestringchar "~2.4.1"
- lodash._reinterpolate "~2.4.1"
- lodash.defaults "~2.4.1"
- lodash.escape "~2.4.1"
- lodash.keys "~2.4.1"
- lodash.templatesettings "~2.4.1"
- lodash.values "~2.4.1"
-
-lodash.template@^3.0.0:
- version "3.6.2"
- resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-3.6.2.tgz#f8cdecc6169a255be9098ae8b0c53d378931d14f"
- dependencies:
- lodash._basecopy "^3.0.0"
- lodash._basetostring "^3.0.0"
- lodash._basevalues "^3.0.0"
- lodash._isiterateecall "^3.0.0"
- lodash._reinterpolate "^3.0.0"
- lodash.escape "^3.0.0"
- lodash.keys "^3.0.0"
- lodash.restparam "^3.0.0"
- lodash.templatesettings "^3.0.0"
-
-lodash.templatesettings@^3.0.0:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz#fb307844753b66b9f1afa54e262c745307dba8e5"
- dependencies:
- lodash._reinterpolate "^3.0.0"
- lodash.escape "^3.0.0"
-
-lodash.templatesettings@~2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-2.4.1.tgz#ea76c75d11eb86d4dbe89a83893bb861929ac699"
- dependencies:
- lodash._reinterpolate "~2.4.1"
- lodash.escape "~2.4.1"
-
-lodash.toplainobject@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/lodash.toplainobject/-/lodash.toplainobject-3.0.0.tgz#28790ad942d293d78aa663a07ecf7f52ca04198d"
- dependencies:
- lodash._basecopy "^3.0.0"
- lodash.keysin "^3.0.0"
-
-lodash.uniq@^4.5.0:
- version "4.5.0"
- resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
-
-lodash.values@~2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/lodash.values/-/lodash.values-2.4.1.tgz#abf514436b3cb705001627978cbcf30b1280eea4"
- dependencies:
- lodash.keys "~2.4.1"
-
-lodash.words@^3.0.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/lodash.words/-/lodash.words-3.2.0.tgz#4e2a8649bc08745b17c695b1a3ce8fee596623b3"
- dependencies:
- lodash._root "^3.0.0"
-
-lodash@^3.10.0, lodash@^3.3.1, lodash@^3.9.3:
- version "3.10.1"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6"
-
-lodash@^4.0.0, lodash@^4.14.0, lodash@^4.17.2, lodash@^4.17.4, lodash@^4.6.1:
- version "4.17.4"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae"
-
-lodash@~1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-1.0.2.tgz#8f57560c83b59fc270bd3d561b690043430e2551"
-
-longest@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097"
-
-loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848"
- dependencies:
- js-tokens "^3.0.0"
-
-loud-rejection@^1.0.0:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f"
- dependencies:
- currently-unhandled "^0.4.1"
- signal-exit "^3.0.0"
-
-lru-cache@2:
- version "2.7.3"
- resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.7.3.tgz#6d4524e8b955f95d4f5b58851ce21dd72fb4e952"
-
-macaddress@^0.2.8:
- version "0.2.8"
- resolved "https://registry.yarnpkg.com/macaddress/-/macaddress-0.2.8.tgz#5904dc537c39ec6dbefeae902327135fa8511f12"
-
-makeerror@1.0.x:
- version "1.0.11"
- resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c"
- dependencies:
- tmpl "1.0.x"
-
-map-cache@^0.2.0:
- version "0.2.2"
- resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf"
-
-map-obj@^1.0.0, map-obj@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d"
-
-map-stream@0.0.4:
- version "0.0.4"
- resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.0.4.tgz#5ec6de90213ef6c7b2eb9367e9ade8da4efdb68b"
-
-map-stream@>=0.0.4:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.1.0.tgz#e56aa94c4c8055a16404a0674b78f215f7c8e194"
-
-math-expression-evaluator@^1.2.14:
- version "1.2.17"
- resolved "https://registry.yarnpkg.com/math-expression-evaluator/-/math-expression-evaluator-1.2.17.tgz#de819fdbcd84dccd8fae59c6aeb79615b9d266ac"
-
-md5.js@^1.3.4:
- version "1.3.4"
- resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.4.tgz#e9bdbde94a20a5ac18b04340fc5764d5b09d901d"
- dependencies:
- hash-base "^3.0.0"
- inherits "^2.0.1"
-
-media-typer@0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"
-
-memory-fs@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.2.0.tgz#f2bb25368bc121e391c2520de92969caee0a0290"
-
-memory-fs@~0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.3.0.tgz#7bcc6b629e3a43e871d7e29aca6ae8a7f15cbb20"
- dependencies:
- errno "^0.1.3"
- readable-stream "^2.0.1"
-
-memory-fs@~0.4.1:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552"
- dependencies:
- errno "^0.1.3"
- readable-stream "^2.0.1"
-
-meow@^3.3.0:
- version "3.7.0"
- resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb"
- dependencies:
- camelcase-keys "^2.0.0"
- decamelize "^1.1.2"
- loud-rejection "^1.0.0"
- map-obj "^1.0.1"
- minimist "^1.1.3"
- normalize-package-data "^2.3.4"
- object-assign "^4.0.1"
- read-pkg-up "^1.0.1"
- redent "^1.0.0"
- trim-newlines "^1.0.0"
-
-merge-descriptors@1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61"
-
-merge@^1.1.3:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.0.tgz#7531e39d4949c281a66b8c5a6e0265e8b05894da"
-
-methods@~1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee"
-
-micromatch@^2.1.5, micromatch@^2.3.11, micromatch@^2.3.7:
- version "2.3.11"
- resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565"
- dependencies:
- arr-diff "^2.0.0"
- array-unique "^0.2.1"
- braces "^1.8.2"
- expand-brackets "^0.1.4"
- extglob "^0.3.1"
- filename-regex "^2.0.0"
- is-extglob "^1.0.0"
- is-glob "^2.0.1"
- kind-of "^3.0.2"
- normalize-path "^2.0.1"
- object.omit "^2.0.0"
- parse-glob "^3.0.4"
- regex-cache "^0.4.2"
-
-miller-rabin@^4.0.0:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d"
- dependencies:
- bn.js "^4.0.0"
- brorand "^1.0.1"
-
-"mime-db@>= 1.30.0 < 2":
- version "1.32.0"
- resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.32.0.tgz#485b3848b01a3cda5f968b4882c0771e58e09414"
-
-mime-db@~1.30.0:
- version "1.30.0"
- resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01"
-
-mime-types@^2.1.12, mime-types@~2.1.15, mime-types@~2.1.16, mime-types@~2.1.17, mime-types@~2.1.7:
- version "2.1.17"
- resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a"
- dependencies:
- mime-db "~1.30.0"
-
-mime@1.4.1:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6"
-
-mime@^1.5.0:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"
-
-min-document@^2.19.0:
- version "2.19.0"
- resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685"
- dependencies:
- dom-walk "^0.1.0"
-
-minimalistic-assert@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz#702be2dda6b37f4836bcb3f5db56641b64a1d3d3"
-
-minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a"
-
-"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
- dependencies:
- brace-expansion "^1.1.7"
-
-minimatch@^2.0.1, minimatch@^2.0.3:
- version "2.0.10"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-2.0.10.tgz#8d087c39c6b38c001b97fca7ce6d0e1e80afbac7"
- dependencies:
- brace-expansion "^1.0.0"
-
-minimatch@~0.2.11:
- version "0.2.14"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-0.2.14.tgz#c74e780574f63c6f9a090e90efbe6ef53a6a756a"
- dependencies:
- lru-cache "2"
- sigmund "~1.0.0"
-
-minimist@0.0.8:
- version "0.0.8"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
-
-minimist@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.2.0.tgz#4dffe525dae2b864c66c2e23c6271d7afdecefce"
-
-minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
-
-minimist@~0.0.1:
- version "0.0.10"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf"
-
-mkdirp@0.5.1, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1:
- version "0.5.1"
- resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
- dependencies:
- minimist "0.0.8"
-
-module-deps@^3.7.11:
- version "3.9.1"
- resolved "https://registry.yarnpkg.com/module-deps/-/module-deps-3.9.1.tgz#ea75caf9199090d25b0d5512b5acacb96e7f87f3"
- dependencies:
- JSONStream "^1.0.3"
- browser-resolve "^1.7.0"
- concat-stream "~1.4.5"
- defined "^1.0.0"
- detective "^4.0.0"
- duplexer2 "0.0.2"
- inherits "^2.0.1"
- parents "^1.0.0"
- readable-stream "^1.1.13"
- resolve "^1.1.3"
- stream-combiner2 "~1.0.0"
- subarg "^1.0.0"
- through2 "^1.0.0"
- xtend "^4.0.0"
-
-module-deps@^4.0.8:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/module-deps/-/module-deps-4.1.1.tgz#23215833f1da13fd606ccb8087b44852dcb821fd"
- dependencies:
- JSONStream "^1.0.3"
- browser-resolve "^1.7.0"
- cached-path-relative "^1.0.0"
- concat-stream "~1.5.0"
- defined "^1.0.0"
- detective "^4.0.0"
- duplexer2 "^0.1.2"
- inherits "^2.0.1"
- parents "^1.0.0"
- readable-stream "^2.0.2"
- resolve "^1.1.3"
- stream-combiner2 "^1.1.1"
- subarg "^1.0.0"
- through2 "^2.0.0"
- xtend "^4.0.0"
-
-ms@2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
-
-multipipe@^0.1.0, multipipe@^0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/multipipe/-/multipipe-0.1.2.tgz#2a8f2ddf70eed564dff2d57f1e1a137d9f05078b"
- dependencies:
- duplexer2 "0.0.2"
-
-mute-stream@0.0.4:
- version "0.0.4"
- resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.4.tgz#a9219960a6d5d5d046597aee51252c6655f7177e"
-
-nan@^2.3.0:
- version "2.8.0"
- resolved "https://registry.yarnpkg.com/nan/-/nan-2.8.0.tgz#ed715f3fe9de02b57a5e6252d90a96675e1f085a"
-
-natives@^1.1.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/natives/-/natives-1.1.1.tgz#011acce1f7cbd87f7ba6b3093d6cd9392be1c574"
-
-natural-compare@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
-
-nearley@^2.7.7:
- version "2.11.0"
- resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.11.0.tgz#5e626c79a6cd2f6ab9e7e5d5805e7668967757ae"
- dependencies:
- nomnom "~1.6.2"
- railroad-diagrams "^1.0.0"
- randexp "^0.4.2"
-
-negotiator@0.6.1:
- version "0.6.1"
- resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9"
-
-node-fetch@^1.0.1:
- version "1.7.3"
- resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef"
- dependencies:
- encoding "^0.1.11"
- is-stream "^1.0.1"
-
-node-int64@^0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b"
-
-node-libs-browser@^0.7.0:
- version "0.7.0"
- resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-0.7.0.tgz#3e272c0819e308935e26674408d7af0e1491b83b"
- dependencies:
- assert "^1.1.1"
- browserify-zlib "^0.1.4"
- buffer "^4.9.0"
- console-browserify "^1.1.0"
- constants-browserify "^1.0.0"
- crypto-browserify "3.3.0"
- domain-browser "^1.1.1"
- events "^1.0.0"
- https-browserify "0.0.1"
- os-browserify "^0.2.0"
- path-browserify "0.0.0"
- process "^0.11.0"
- punycode "^1.2.4"
- querystring-es3 "^0.2.0"
- readable-stream "^2.0.5"
- stream-browserify "^2.0.1"
- stream-http "^2.3.1"
- string_decoder "^0.10.25"
- timers-browserify "^2.0.2"
- tty-browserify "0.0.0"
- url "^0.11.0"
- util "^0.10.3"
- vm-browserify "0.0.4"
-
-node-notifier@^5.0.1:
- version "5.1.2"
- resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.1.2.tgz#2fa9e12605fa10009d44549d6fcd8a63dde0e4ff"
- dependencies:
- growly "^1.3.0"
- semver "^5.3.0"
- shellwords "^0.1.0"
- which "^1.2.12"
-
-node-pre-gyp@^0.6.39:
- version "0.6.39"
- resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.39.tgz#c00e96860b23c0e1420ac7befc5044e1d78d8649"
- dependencies:
- detect-libc "^1.0.2"
- hawk "3.1.3"
- mkdirp "^0.5.1"
- nopt "^4.0.1"
- npmlog "^4.0.2"
- rc "^1.1.7"
- request "2.81.0"
- rimraf "^2.6.1"
- semver "^5.3.0"
- tar "^2.2.1"
- tar-pack "^3.4.0"
-
-nomnom@~1.6.2:
- version "1.6.2"
- resolved "https://registry.yarnpkg.com/nomnom/-/nomnom-1.6.2.tgz#84a66a260174408fc5b77a18f888eccc44fb6971"
- dependencies:
- colors "0.5.x"
- underscore "~1.4.4"
-
-nopt@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d"
- dependencies:
- abbrev "1"
- osenv "^0.1.4"
-
-normalize-package-data@^2.3.2, normalize-package-data@^2.3.4:
- version "2.4.0"
- resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f"
- dependencies:
- hosted-git-info "^2.1.4"
- is-builtin-module "^1.0.0"
- semver "2 || 3 || 4 || 5"
- validate-npm-package-license "^3.0.1"
-
-normalize-path@^2.0.0, normalize-path@^2.0.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9"
- dependencies:
- remove-trailing-separator "^1.0.1"
-
-normalize-range@^0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942"
-
-normalize-url@^1.4.0:
- version "1.9.1"
- resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c"
- dependencies:
- object-assign "^4.0.1"
- prepend-http "^1.0.0"
- query-string "^4.1.0"
- sort-keys "^1.0.0"
-
-npmlog@^4.0.2:
- version "4.1.2"
- resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
- dependencies:
- are-we-there-yet "~1.1.2"
- console-control-strings "~1.1.0"
- gauge "~2.7.3"
- set-blocking "~2.0.0"
-
-num2fraction@^1.2.2:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede"
-
-number-is-nan@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
-
-"nwmatcher@>= 1.3.9 < 2.0.0":
- version "1.4.3"
- resolved "https://registry.yarnpkg.com/nwmatcher/-/nwmatcher-1.4.3.tgz#64348e3b3d80f035b40ac11563d278f8b72db89c"
-
-oauth-sign@~0.8.1, oauth-sign@~0.8.2:
- version "0.8.2"
- resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43"
-
-object-assign@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-2.1.1.tgz#43c36e5d569ff8e4816c4efa8be02d26967c18aa"
-
-object-assign@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2"
-
-object-assign@^4.0.0, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
-
-object-hash@^1.1.4:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-1.2.0.tgz#e96af0e96981996a1d47f88ead8f74f1ebc4422b"
-
-object-keys@^1.0.4:
- version "1.0.11"
- resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d"
-
-object.defaults@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/object.defaults/-/object.defaults-1.1.0.tgz#3a7f868334b407dea06da16d88d5cd29e435fecf"
- dependencies:
- array-each "^1.0.1"
- array-slice "^1.0.0"
- for-own "^1.0.0"
- isobject "^3.0.0"
-
-object.omit@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa"
- dependencies:
- for-own "^0.1.4"
- is-extendable "^0.1.1"
-
-object.pick@^1.2.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747"
- dependencies:
- isobject "^3.0.1"
-
-on-finished@~2.3.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947"
- dependencies:
- ee-first "1.1.1"
-
-on-headers@~1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7"
-
-once@^1.3.0, once@^1.3.3, once@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
- dependencies:
- wrappy "1"
-
-once@~1.3.0:
- version "1.3.3"
- resolved "https://registry.yarnpkg.com/once/-/once-1.3.3.tgz#b2e261557ce4c314ec8304f3fa82663e4297ca20"
- dependencies:
- wrappy "1"
-
-open@0.0.5:
- version "0.0.5"
- resolved "https://registry.yarnpkg.com/open/-/open-0.0.5.tgz#42c3e18ec95466b6bf0dc42f3a2945c3f0cad8fc"
-
-optimist@^0.6.1, optimist@~0.6.0, optimist@~0.6.1:
- version "0.6.1"
- resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686"
- dependencies:
- minimist "~0.0.1"
- wordwrap "~0.0.2"
-
-optionator@^0.5.0:
- version "0.5.0"
- resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.5.0.tgz#b75a8995a2d417df25b6e4e3862f50aa88651368"
- dependencies:
- deep-is "~0.1.2"
- fast-levenshtein "~1.0.0"
- levn "~0.2.5"
- prelude-ls "~1.1.1"
- type-check "~0.3.1"
- wordwrap "~0.0.2"
-
-optionator@^0.8.1:
- version "0.8.2"
- resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64"
- dependencies:
- deep-is "~0.1.3"
- fast-levenshtein "~2.0.4"
- levn "~0.3.0"
- prelude-ls "~1.1.2"
- type-check "~0.3.2"
- wordwrap "~1.0.0"
-
-orchestrator@^0.3.0:
- version "0.3.8"
- resolved "https://registry.yarnpkg.com/orchestrator/-/orchestrator-0.3.8.tgz#14e7e9e2764f7315fbac184e506c7aa6df94ad7e"
- dependencies:
- end-of-stream "~0.1.5"
- sequencify "~0.0.7"
- stream-consume "~0.1.0"
-
-ordered-read-streams@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-0.1.0.tgz#fd565a9af8eb4473ba69b6ed8a34352cb552f126"
-
-original@>=0.0.5:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/original/-/original-1.0.0.tgz#9147f93fa1696d04be61e01bd50baeaca656bd3b"
- dependencies:
- url-parse "1.0.x"
-
-os-browserify@^0.2.0:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.2.1.tgz#63fc4ccee5d2d7763d26bbf8601078e6c2e0044f"
-
-os-browserify@~0.1.1:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.1.2.tgz#49ca0293e0b19590a5f5de10c7f265a617d8fe54"
-
-os-browserify@~0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27"
-
-os-homedir@^1.0.0, os-homedir@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
-
-os-locale@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9"
- dependencies:
- lcid "^1.0.0"
-
-os-tmpdir@^1.0.0, os-tmpdir@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
-
-osenv@^0.1.4:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644"
- dependencies:
- os-homedir "^1.0.0"
- os-tmpdir "^1.0.0"
-
-outpipe@^1.1.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/outpipe/-/outpipe-1.1.1.tgz#50cf8616365e87e031e29a5ec9339a3da4725fa2"
- dependencies:
- shell-quote "^1.4.2"
-
-output-file-sync@^1.1.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/output-file-sync/-/output-file-sync-1.1.2.tgz#d0a33eefe61a205facb90092e826598d5245ce76"
- dependencies:
- graceful-fs "^4.1.4"
- mkdirp "^0.5.1"
- object-assign "^4.1.0"
-
-p-limit@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.1.0.tgz#b07ff2d9a5d88bec806035895a2bab66a27988bc"
-
-p-locate@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43"
- dependencies:
- p-limit "^1.1.0"
-
-pako@~0.2.0:
- version "0.2.9"
- resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75"
-
-pako@~1.0.5:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.6.tgz#0101211baa70c4bca4a0f63f2206e97b7dfaf258"
-
-parents@^1.0.0, parents@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/parents/-/parents-1.0.1.tgz#fedd4d2bf193a77745fe71e371d73c3307d9c751"
- dependencies:
- path-platform "~0.11.15"
-
-parse-asn1@^5.0.0:
- version "5.1.0"
- resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.0.tgz#37c4f9b7ed3ab65c74817b5f2480937fbf97c712"
- dependencies:
- asn1.js "^4.0.0"
- browserify-aes "^1.0.0"
- create-hash "^1.1.0"
- evp_bytestokey "^1.0.0"
- pbkdf2 "^3.0.3"
-
-parse-filepath@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.1.tgz#159d6155d43904d16c10ef698911da1e91969b73"
- dependencies:
- is-absolute "^0.2.3"
- map-cache "^0.2.0"
- path-root "^0.1.1"
-
-parse-glob@^3.0.4:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c"
- dependencies:
- glob-base "^0.3.0"
- is-dotfile "^1.0.0"
- is-extglob "^1.0.0"
- is-glob "^2.0.0"
-
-parse-import@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/parse-import/-/parse-import-2.0.0.tgz#2b2474030e008ab98db76c4bcbf4db5ae7306f5f"
- dependencies:
- get-imports "^1.0.0"
-
-parse-json@^2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9"
- dependencies:
- error-ex "^1.2.0"
-
-parse-passwd@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6"
-
-parse5@^1.5.1:
- version "1.5.1"
- resolved "https://registry.yarnpkg.com/parse5/-/parse5-1.5.1.tgz#9b7f3b0de32be78dc2401b17573ccaf0f6f59d94"
-
-parseurl@~1.3.2:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3"
-
-path-browserify@0.0.0, path-browserify@~0.0.0:
- version "0.0.0"
- resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.0.tgz#a0b870729aae214005b7d5032ec2cbbb0fb4451a"
-
-path-exists@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-1.0.0.tgz#d5a8998eb71ef37a74c34eb0d9eba6e878eea081"
-
-path-exists@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b"
- dependencies:
- pinkie-promise "^2.0.0"
-
-path-exists@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"
-
-path-is-absolute@^1.0.0, path-is-absolute@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
-
-path-is-inside@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53"
-
-path-parse@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1"
-
-path-platform@~0.11.15:
- version "0.11.15"
- resolved "https://registry.yarnpkg.com/path-platform/-/path-platform-0.11.15.tgz#e864217f74c36850f0852b78dc7bf7d4a5721bf2"
-
-path-root-regex@^0.1.0:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/path-root-regex/-/path-root-regex-0.1.2.tgz#bfccdc8df5b12dc52c8b43ec38d18d72c04ba96d"
-
-path-root@^0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/path-root/-/path-root-0.1.1.tgz#9a4a6814cac1c0cd73360a95f32083c8ea4745b7"
- dependencies:
- path-root-regex "^0.1.0"
-
-path-to-regexp@0.1.7:
- version "0.1.7"
- resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c"
-
-path-type@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441"
- dependencies:
- graceful-fs "^4.1.2"
- pify "^2.0.0"
- pinkie-promise "^2.0.0"
-
-pbkdf2-compat@2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/pbkdf2-compat/-/pbkdf2-compat-2.0.1.tgz#b6e0c8fa99494d94e0511575802a59a5c142f288"
-
-pbkdf2@^3.0.3:
- version "3.0.14"
- resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.14.tgz#a35e13c64799b06ce15320f459c230e68e73bade"
- dependencies:
- create-hash "^1.1.2"
- create-hmac "^1.1.4"
- ripemd160 "^2.0.1"
- safe-buffer "^5.0.1"
- sha.js "^2.4.8"
-
-performance-now@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5"
-
-performance-now@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
-
-pify@^2.0.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
-
-pinkie-promise@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
- dependencies:
- pinkie "^2.0.0"
-
-pinkie@^2.0.0:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
-
-pkg-dir@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4"
- dependencies:
- find-up "^1.0.0"
-
-postcss-calc@^5.2.0:
- version "5.3.1"
- resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-5.3.1.tgz#77bae7ca928ad85716e2fda42f261bf7c1d65b5e"
- dependencies:
- postcss "^5.0.2"
- postcss-message-helpers "^2.0.0"
- reduce-css-calc "^1.2.6"
-
-postcss-colormin@^2.1.8:
- version "2.2.2"
- resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-2.2.2.tgz#6631417d5f0e909a3d7ec26b24c8a8d1e4f96e4b"
- dependencies:
- colormin "^1.0.5"
- postcss "^5.0.13"
- postcss-value-parser "^3.2.3"
-
-postcss-convert-values@^2.3.4:
- version "2.6.1"
- resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-2.6.1.tgz#bbd8593c5c1fd2e3d1c322bb925dcae8dae4d62d"
- dependencies:
- postcss "^5.0.11"
- postcss-value-parser "^3.1.2"
-
-postcss-discard-comments@^2.0.4:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-2.0.4.tgz#befe89fafd5b3dace5ccce51b76b81514be00e3d"
- dependencies:
- postcss "^5.0.14"
-
-postcss-discard-duplicates@^2.0.1:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-2.1.0.tgz#b9abf27b88ac188158a5eb12abcae20263b91932"
- dependencies:
- postcss "^5.0.4"
-
-postcss-discard-empty@^2.0.1:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-2.1.0.tgz#d2b4bd9d5ced5ebd8dcade7640c7d7cd7f4f92b5"
- dependencies:
- postcss "^5.0.14"
-
-postcss-discard-overridden@^0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-0.1.1.tgz#8b1eaf554f686fb288cd874c55667b0aa3668d58"
- dependencies:
- postcss "^5.0.16"
-
-postcss-discard-unused@^2.2.1:
- version "2.2.3"
- resolved "https://registry.yarnpkg.com/postcss-discard-unused/-/postcss-discard-unused-2.2.3.tgz#bce30b2cc591ffc634322b5fb3464b6d934f4433"
- dependencies:
- postcss "^5.0.14"
- uniqs "^2.0.0"
-
-postcss-filter-plugins@^2.0.0:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/postcss-filter-plugins/-/postcss-filter-plugins-2.0.2.tgz#6d85862534d735ac420e4a85806e1f5d4286d84c"
- dependencies:
- postcss "^5.0.4"
- uniqid "^4.0.0"
-
-postcss-merge-idents@^2.1.5:
- version "2.1.7"
- resolved "https://registry.yarnpkg.com/postcss-merge-idents/-/postcss-merge-idents-2.1.7.tgz#4c5530313c08e1d5b3bbf3d2bbc747e278eea270"
- dependencies:
- has "^1.0.1"
- postcss "^5.0.10"
- postcss-value-parser "^3.1.1"
-
-postcss-merge-longhand@^2.0.1:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-2.0.2.tgz#23d90cd127b0a77994915332739034a1a4f3d658"
- dependencies:
- postcss "^5.0.4"
-
-postcss-merge-rules@^2.0.3:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-2.1.2.tgz#d1df5dfaa7b1acc3be553f0e9e10e87c61b5f721"
- dependencies:
- browserslist "^1.5.2"
- caniuse-api "^1.5.2"
- postcss "^5.0.4"
- postcss-selector-parser "^2.2.2"
- vendors "^1.0.0"
-
-postcss-message-helpers@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/postcss-message-helpers/-/postcss-message-helpers-2.0.0.tgz#a4f2f4fab6e4fe002f0aed000478cdf52f9ba60e"
-
-postcss-minify-font-values@^1.0.2:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-1.0.5.tgz#4b58edb56641eba7c8474ab3526cafd7bbdecb69"
- dependencies:
- object-assign "^4.0.1"
- postcss "^5.0.4"
- postcss-value-parser "^3.0.2"
-
-postcss-minify-gradients@^1.0.1:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-1.0.5.tgz#5dbda11373703f83cfb4a3ea3881d8d75ff5e6e1"
- dependencies:
- postcss "^5.0.12"
- postcss-value-parser "^3.3.0"
-
-postcss-minify-params@^1.0.4:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-1.2.2.tgz#ad2ce071373b943b3d930a3fa59a358c28d6f1f3"
- dependencies:
- alphanum-sort "^1.0.1"
- postcss "^5.0.2"
- postcss-value-parser "^3.0.2"
- uniqs "^2.0.0"
-
-postcss-minify-selectors@^2.0.4:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-2.1.1.tgz#b2c6a98c0072cf91b932d1a496508114311735bf"
- dependencies:
- alphanum-sort "^1.0.2"
- has "^1.0.1"
- postcss "^5.0.14"
- postcss-selector-parser "^2.0.0"
-
-postcss-modules-extract-imports@1.0.0-beta2:
- version "1.0.0-beta2"
- resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.0.0-beta2.tgz#f1d3533eea3fe79dffa97a2371cc916393401dc5"
- dependencies:
- postcss "^5.0.4"
-
-postcss-modules-local-by-default@^1.0.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069"
- dependencies:
- css-selector-tokenizer "^0.7.0"
- postcss "^6.0.1"
-
-postcss-modules-scope@1.0.0-beta2:
- version "1.0.0-beta2"
- resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.0.0-beta2.tgz#76af8b0008ede646bb9db675e27bc4ee3aa044bc"
- dependencies:
- css-selector-tokenizer "^0.5.0"
- postcss "^5.0.4"
-
-postcss-modules-values@^1.1.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz#ecffa9d7e192518389f42ad0e83f72aec456ea20"
- dependencies:
- icss-replace-symbols "^1.1.0"
- postcss "^6.0.1"
-
-postcss-normalize-charset@^1.1.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-1.1.1.tgz#ef9ee71212d7fe759c78ed162f61ed62b5cb93f1"
- dependencies:
- postcss "^5.0.5"
-
-postcss-normalize-url@^3.0.7:
- version "3.0.8"
- resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-3.0.8.tgz#108f74b3f2fcdaf891a2ffa3ea4592279fc78222"
- dependencies:
- is-absolute-url "^2.0.0"
- normalize-url "^1.4.0"
- postcss "^5.0.14"
- postcss-value-parser "^3.2.3"
-
-postcss-ordered-values@^2.1.0:
- version "2.2.3"
- resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-2.2.3.tgz#eec6c2a67b6c412a8db2042e77fe8da43f95c11d"
- dependencies:
- postcss "^5.0.4"
- postcss-value-parser "^3.0.1"
-
-postcss-reduce-idents@^2.2.2:
- version "2.4.0"
- resolved "https://registry.yarnpkg.com/postcss-reduce-idents/-/postcss-reduce-idents-2.4.0.tgz#c2c6d20cc958284f6abfbe63f7609bf409059ad3"
- dependencies:
- postcss "^5.0.4"
- postcss-value-parser "^3.0.2"
-
-postcss-reduce-initial@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-1.0.1.tgz#68f80695f045d08263a879ad240df8dd64f644ea"
- dependencies:
- postcss "^5.0.4"
-
-postcss-reduce-transforms@^1.0.3:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-1.0.4.tgz#ff76f4d8212437b31c298a42d2e1444025771ae1"
- dependencies:
- has "^1.0.1"
- postcss "^5.0.8"
- postcss-value-parser "^3.0.1"
-
-postcss-selector-parser@^2.0.0, postcss-selector-parser@^2.2.2:
- version "2.2.3"
- resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz#f9437788606c3c9acee16ffe8d8b16297f27bb90"
- dependencies:
- flatten "^1.0.2"
- indexes-of "^1.0.1"
- uniq "^1.0.1"
-
-postcss-svgo@^2.1.1:
- version "2.1.6"
- resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-2.1.6.tgz#b6df18aa613b666e133f08adb5219c2684ac108d"
- dependencies:
- is-svg "^2.0.0"
- postcss "^5.0.14"
- postcss-value-parser "^3.2.3"
- svgo "^0.7.0"
-
-postcss-unique-selectors@^2.0.2:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-2.0.2.tgz#981d57d29ddcb33e7b1dfe1fd43b8649f933ca1d"
- dependencies:
- alphanum-sort "^1.0.1"
- postcss "^5.0.4"
- uniqs "^2.0.0"
-
-postcss-value-parser@^3.0.1, postcss-value-parser@^3.0.2, postcss-value-parser@^3.1.1, postcss-value-parser@^3.1.2, postcss-value-parser@^3.2.3, postcss-value-parser@^3.3.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz#87f38f9f18f774a4ab4c8a232f5c5ce8872a9d15"
-
-postcss-zindex@^2.0.1:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/postcss-zindex/-/postcss-zindex-2.2.0.tgz#d2109ddc055b91af67fc4cb3b025946639d2af22"
- dependencies:
- has "^1.0.1"
- postcss "^5.0.4"
- uniqs "^2.0.0"
-
-postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0.14, postcss@^5.0.16, postcss@^5.0.2, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.6, postcss@^5.0.8, postcss@^5.2.16:
- version "5.2.18"
- resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.18.tgz#badfa1497d46244f6390f58b319830d9107853c5"
- dependencies:
- chalk "^1.1.3"
- js-base64 "^2.1.9"
- source-map "^0.5.6"
- supports-color "^3.2.3"
-
-postcss@^6.0.1:
- version "6.0.14"
- resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.14.tgz#5534c72114739e75d0afcf017db853099f562885"
- dependencies:
- chalk "^2.3.0"
- source-map "^0.6.1"
- supports-color "^4.4.0"
-
-prelude-ls@~1.1.0, prelude-ls@~1.1.1, prelude-ls@~1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
-
-prepend-http@^1.0.0:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc"
-
-preserve@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b"
-
-pretty-format@^19.0.0:
- version "19.0.0"
- resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-19.0.0.tgz#56530d32acb98a3fa4851c4e2b9d37b420684c84"
- dependencies:
- ansi-styles "^3.0.0"
-
-pretty-hrtime@^1.0.0:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1"
-
-private@^0.1.6, private@^0.1.7, private@~0.1.5:
- version "0.1.8"
- resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff"
-
-process-nextick-args@~1.0.6:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3"
-
-process@^0.11.0, process@~0.11.0:
- version "0.11.10"
- resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182"
-
-process@~0.5.1:
- version "0.5.2"
- resolved "https://registry.yarnpkg.com/process/-/process-0.5.2.tgz#1638d8a8e34c2f440a91db95ab9aeb677fc185cf"
-
-promise@^7.1.1:
- version "7.3.1"
- resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf"
- dependencies:
- asap "~2.0.3"
-
-prop-types-extra@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/prop-types-extra/-/prop-types-extra-1.0.1.tgz#a57bd4810e82d27a3ff4317ecc1b4ad005f79a82"
- dependencies:
- warning "^3.0.0"
-
-prop-types@^15.5.10, prop-types@^15.5.4, prop-types@^15.5.6, prop-types@^15.6.0:
- version "15.6.0"
- resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.0.tgz#ceaf083022fc46b4a35f69e13ef75aed0d639856"
- dependencies:
- fbjs "^0.8.16"
- loose-envify "^1.3.1"
- object-assign "^4.1.1"
-
-proxy-addr@~2.0.2:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.2.tgz#6571504f47bb988ec8180253f85dd7e14952bdec"
- dependencies:
- forwarded "~0.1.2"
- ipaddr.js "1.5.2"
-
-prr@~1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476"
-
-public-encrypt@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.0.tgz#39f699f3a46560dd5ebacbca693caf7c65c18cc6"
- dependencies:
- bn.js "^4.1.0"
- browserify-rsa "^4.0.0"
- create-hash "^1.1.0"
- parse-asn1 "^5.0.0"
- randombytes "^2.0.1"
-
-punycode@1.3.2:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d"
-
-punycode@^1.2.4, punycode@^1.3.2, punycode@^1.4.1:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
-
-q@^1.1.2:
- version "1.5.1"
- resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7"
-
-qs@6.5.1, qs@~6.5.1:
- version "6.5.1"
- resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8"
-
-qs@~6.4.0:
- version "6.4.0"
- resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233"
-
-query-string@^4.1.0, query-string@^4.2.2:
- version "4.3.4"
- resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb"
- dependencies:
- object-assign "^4.1.0"
- strict-uri-encode "^1.0.0"
-
-querystring-es3@^0.2.0, querystring-es3@~0.2.0:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73"
-
-querystring@0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620"
-
-querystringify@0.0.x:
- version "0.0.4"
- resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-0.0.4.tgz#0cf7f84f9463ff0ae51c4c4b142d95be37724d9c"
-
-querystringify@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-1.0.0.tgz#6286242112c5b712fa654e526652bf6a13ff05cb"
-
-railroad-diagrams@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz#eb7e6267548ddedfb899c1b90e57374559cddb7e"
-
-randexp@^0.4.2:
- version "0.4.6"
- resolved "https://registry.yarnpkg.com/randexp/-/randexp-0.4.6.tgz#e986ad5e5e31dae13ddd6f7b3019aa7c87f60ca3"
- dependencies:
- discontinuous-range "1.0.0"
- ret "~0.1.10"
-
-randomatic@^1.1.3:
- version "1.1.7"
- resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.7.tgz#c7abe9cc8b87c0baa876b19fde83fd464797e38c"
- dependencies:
- is-number "^3.0.0"
- kind-of "^4.0.0"
-
-randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.5.tgz#dc009a246b8d09a177b4b7a0ae77bc570f4b1b79"
- dependencies:
- safe-buffer "^5.1.0"
-
-randomfill@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.3.tgz#b96b7df587f01dd91726c418f30553b1418e3d62"
- dependencies:
- randombytes "^2.0.5"
- safe-buffer "^5.1.0"
-
-range-parser@^1.0.3, range-parser@~1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e"
-
-raw-body@2.3.2:
- version "2.3.2"
- resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.2.tgz#bcd60c77d3eb93cde0050295c3f379389bc88f89"
- dependencies:
- bytes "3.0.0"
- http-errors "1.6.2"
- iconv-lite "0.4.19"
- unpipe "1.0.0"
-
-rc@^1.1.7:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.2.tgz#d8ce9cb57e8d64d9c7badd9876c7c34cbe3c7077"
- dependencies:
- deep-extend "~0.4.0"
- ini "~1.3.0"
- minimist "^1.2.0"
- strip-json-comments "~2.0.1"
-
-react-bootstrap@0.31.3:
- version "0.31.3"
- resolved "https://registry.yarnpkg.com/react-bootstrap/-/react-bootstrap-0.31.3.tgz#db2b7d45b00b5dac1ab8b6de3dd97feb3091b849"
- dependencies:
- babel-runtime "^6.11.6"
- classnames "^2.2.5"
- dom-helpers "^3.2.0"
- invariant "^2.2.1"
- keycode "^2.1.2"
- prop-types "^15.5.10"
- prop-types-extra "^1.0.1"
- react-overlays "^0.7.0"
- react-prop-types "^0.4.0"
- uncontrollable "^4.1.0"
- warning "^3.0.0"
-
-react-deep-force-update@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/react-deep-force-update/-/react-deep-force-update-2.1.1.tgz#8ea4263cd6455a050b37445b3f08fd839d86e909"
-
-react-dom@16.0.0:
- version "16.0.0"
- resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.0.0.tgz#9cc3079c3dcd70d4c6e01b84aab2a7e34c303f58"
- dependencies:
- fbjs "^0.8.16"
- loose-envify "^1.1.0"
- object-assign "^4.1.1"
- prop-types "^15.6.0"
-
-react-hot-loader@^3.0.0-beta.6:
- version "3.1.3"
- resolved "https://registry.yarnpkg.com/react-hot-loader/-/react-hot-loader-3.1.3.tgz#6f92877326958c7cb0134b512474517869126082"
- dependencies:
- global "^4.3.0"
- react-deep-force-update "^2.1.1"
- react-proxy "^3.0.0-alpha.0"
- redbox-react "^1.3.6"
- source-map "^0.6.1"
-
-react-modal@^3.1.7:
- version "3.1.7"
- resolved "https://registry.yarnpkg.com/react-modal/-/react-modal-3.1.7.tgz#21feb937c95cd722bf2d375cada751fdc8189c0e"
- dependencies:
- exenv "^1.2.0"
- prop-types "^15.5.10"
- warning "^3.0.0"
-
-react-overlays@^0.7.0:
- version "0.7.4"
- resolved "https://registry.yarnpkg.com/react-overlays/-/react-overlays-0.7.4.tgz#ef2ec652c3444ab8aa014262b18f662068e56d5c"
- dependencies:
- classnames "^2.2.5"
- dom-helpers "^3.2.1"
- prop-types "^15.5.10"
- prop-types-extra "^1.0.1"
- warning "^3.0.0"
-
-react-prop-types@^0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/react-prop-types/-/react-prop-types-0.4.0.tgz#f99b0bfb4006929c9af2051e7c1414a5c75b93d0"
- dependencies:
- warning "^3.0.0"
-
-react-proxy@^3.0.0-alpha.0:
- version "3.0.0-alpha.1"
- resolved "https://registry.yarnpkg.com/react-proxy/-/react-proxy-3.0.0-alpha.1.tgz#4400426bcfa80caa6724c7755695315209fa4b07"
- dependencies:
- lodash "^4.6.1"
-
-react-router@^3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/react-router/-/react-router-3.2.0.tgz#62b6279d589b70b34e265113e4c0a9261a02ed36"
- dependencies:
- create-react-class "^15.5.1"
- history "^3.0.0"
- hoist-non-react-statics "^1.2.0"
- invariant "^2.2.1"
- loose-envify "^1.2.0"
- prop-types "^15.5.6"
- warning "^3.0.0"
-
-react-s-alert@^1.3.2:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/react-s-alert/-/react-s-alert-1.3.2.tgz#56d8453428d56f22a240eb014d2020d3f62ea984"
- dependencies:
- babel-runtime "^6.23.0"
-
-react@16.0.0:
- version "16.0.0"
- resolved "https://registry.yarnpkg.com/react/-/react-16.0.0.tgz#ce7df8f1941b036f02b2cca9dbd0cb1f0e855e2d"
- dependencies:
- fbjs "^0.8.16"
- loose-envify "^1.1.0"
- object-assign "^4.1.1"
- prop-types "^15.6.0"
-
-read-only-stream@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/read-only-stream/-/read-only-stream-1.1.1.tgz#5da77c799ed1388d3ef88a18471bb5924f8a0ba1"
- dependencies:
- readable-stream "^1.0.31"
- readable-wrap "^1.0.0"
-
-read-only-stream@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/read-only-stream/-/read-only-stream-2.0.0.tgz#2724fd6a8113d73764ac288d4386270c1dbf17f0"
- dependencies:
- readable-stream "^2.0.2"
-
-read-pkg-up@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02"
- dependencies:
- find-up "^1.0.0"
- read-pkg "^1.0.0"
-
-read-pkg@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28"
- dependencies:
- load-json-file "^1.0.0"
- normalize-package-data "^2.3.2"
- path-type "^1.0.0"
-
-"readable-stream@>=1.0.33-1 <1.1.0-0", readable-stream@~1.0.17:
- version "1.0.34"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c"
- dependencies:
- core-util-is "~1.0.0"
- inherits "~2.0.1"
- isarray "0.0.1"
- string_decoder "~0.10.x"
-
-"readable-stream@>=1.1.13-1 <1.2.0-0", readable-stream@^1.0.31, readable-stream@^1.1.13, readable-stream@^1.1.13-1, readable-stream@~1.1.9:
- version "1.1.14"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9"
- dependencies:
- core-util-is "~1.0.0"
- inherits "~2.0.1"
- isarray "0.0.1"
- string_decoder "~0.10.x"
-
-readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.6:
- version "2.3.3"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c"
- dependencies:
- core-util-is "~1.0.0"
- inherits "~2.0.3"
- isarray "~1.0.0"
- process-nextick-args "~1.0.6"
- safe-buffer "~5.1.1"
- string_decoder "~1.0.3"
- util-deprecate "~1.0.1"
-
-readable-stream@~2.0.0:
- version "2.0.6"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.0.6.tgz#8f90341e68a53ccc928788dacfcd11b36eb9b78e"
- dependencies:
- core-util-is "~1.0.0"
- inherits "~2.0.1"
- isarray "~1.0.0"
- process-nextick-args "~1.0.6"
- string_decoder "~0.10.x"
- util-deprecate "~1.0.1"
-
-readable-wrap@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/readable-wrap/-/readable-wrap-1.0.0.tgz#3b5a211c631e12303a54991c806c17e7ae206bff"
- dependencies:
- readable-stream "^1.1.13-1"
-
-readdirp@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78"
- dependencies:
- graceful-fs "^4.1.2"
- minimatch "^3.0.2"
- readable-stream "^2.0.2"
- set-immediate-shim "^1.0.1"
-
-readline2@^0.1.1:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/readline2/-/readline2-0.1.1.tgz#99443ba6e83b830ef3051bfd7dc241a82728d568"
- dependencies:
- mute-stream "0.0.4"
- strip-ansi "^2.0.1"
-
-recast@0.10.33:
- version "0.10.33"
- resolved "https://registry.yarnpkg.com/recast/-/recast-0.10.33.tgz#942808f7aa016f1fa7142c461d7e5704aaa8d697"
- dependencies:
- ast-types "0.8.12"
- esprima-fb "~15001.1001.0-dev-harmony-fb"
- private "~0.1.5"
- source-map "~0.5.0"
-
-recast@^0.10.10:
- version "0.10.43"
- resolved "https://registry.yarnpkg.com/recast/-/recast-0.10.43.tgz#b95d50f6d60761a5f6252e15d80678168491ce7f"
- dependencies:
- ast-types "0.8.15"
- esprima-fb "~15001.1001.0-dev-harmony-fb"
- private "~0.1.5"
- source-map "~0.5.0"
-
-recast@^0.11.17:
- version "0.11.23"
- resolved "https://registry.yarnpkg.com/recast/-/recast-0.11.23.tgz#451fd3004ab1e4df9b4e4b66376b2a21912462d3"
- dependencies:
- ast-types "0.9.6"
- esprima "~3.1.0"
- private "~0.1.5"
- source-map "~0.5.0"
-
-rechoir@^0.6.2:
- version "0.6.2"
- resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384"
- dependencies:
- resolve "^1.1.6"
-
-redbox-react@^1.3.6:
- version "1.5.0"
- resolved "https://registry.yarnpkg.com/redbox-react/-/redbox-react-1.5.0.tgz#04dab11557d26651bf3562a67c22ace56c5d3967"
- dependencies:
- error-stack-parser "^1.3.6"
- object-assign "^4.0.1"
- prop-types "^15.5.4"
- sourcemapped-stacktrace "^1.1.6"
-
-redent@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde"
- dependencies:
- indent-string "^2.1.0"
- strip-indent "^1.0.1"
-
-reduce-css-calc@^1.2.6:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz#747c914e049614a4c9cfbba629871ad1d2927716"
- dependencies:
- balanced-match "^0.4.2"
- math-expression-evaluator "^1.2.14"
- reduce-function-call "^1.0.1"
-
-reduce-function-call@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/reduce-function-call/-/reduce-function-call-1.0.2.tgz#5a200bf92e0e37751752fe45b0ab330fd4b6be99"
- dependencies:
- balanced-match "^0.4.2"
-
-regenerate@^1.2.1:
- version "1.3.3"
- resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.3.tgz#0c336d3980553d755c39b586ae3b20aa49c82b7f"
-
-regenerator-runtime@^0.11.0:
- version "0.11.1"
- resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9"
-
-regenerator-transform@^0.10.0:
- version "0.10.1"
- resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.10.1.tgz#1e4996837231da8b7f3cf4114d71b5691a0680dd"
- dependencies:
- babel-runtime "^6.18.0"
- babel-types "^6.19.0"
- private "^0.1.6"
-
-regenerator@0.8.40:
- version "0.8.40"
- resolved "https://registry.yarnpkg.com/regenerator/-/regenerator-0.8.40.tgz#a0e457c58ebdbae575c9f8cd75127e93756435d8"
- dependencies:
- commoner "~0.10.3"
- defs "~1.1.0"
- esprima-fb "~15001.1001.0-dev-harmony-fb"
- private "~0.1.5"
- recast "0.10.33"
- through "~2.3.8"
-
-regex-cache@^0.4.2:
- version "0.4.4"
- resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd"
- dependencies:
- is-equal-shallow "^0.1.3"
-
-regexpu-core@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-1.0.0.tgz#86a763f58ee4d7c2f6b102e4764050de7ed90c6b"
- dependencies:
- regenerate "^1.2.1"
- regjsgen "^0.2.0"
- regjsparser "^0.1.4"
-
-regexpu-core@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240"
- dependencies:
- regenerate "^1.2.1"
- regjsgen "^0.2.0"
- regjsparser "^0.1.4"
-
-regexpu@^1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/regexpu/-/regexpu-1.3.0.tgz#e534dc991a9e5846050c98de6d7dd4a55c9ea16d"
- dependencies:
- esprima "^2.6.0"
- recast "^0.10.10"
- regenerate "^1.2.1"
- regjsgen "^0.2.0"
- regjsparser "^0.1.4"
-
-regjsgen@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7"
-
-regjsparser@^0.1.4:
- version "0.1.5"
- resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c"
- dependencies:
- jsesc "~0.5.0"
-
-remove-trailing-separator@^1.0.1:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef"
-
-repeat-element@^1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a"
-
-repeat-string@^1.5.2:
- version "1.6.1"
- resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
-
-repeating@^1.1.0, repeating@^1.1.2:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/repeating/-/repeating-1.1.3.tgz#3d4114218877537494f97f77f9785fab810fa4ac"
- dependencies:
- is-finite "^1.0.0"
-
-repeating@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda"
- dependencies:
- is-finite "^1.0.0"
-
-replace-ext@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-0.0.1.tgz#29bbd92078a739f0bcce2b4ee41e837953522924"
-
-request@2.81.0:
- version "2.81.0"
- resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0"
- dependencies:
- aws-sign2 "~0.6.0"
- aws4 "^1.2.1"
- caseless "~0.12.0"
- combined-stream "~1.0.5"
- extend "~3.0.0"
- forever-agent "~0.6.1"
- form-data "~2.1.1"
- har-validator "~4.2.1"
- hawk "~3.1.3"
- http-signature "~1.1.0"
- is-typedarray "~1.0.0"
- isstream "~0.1.2"
- json-stringify-safe "~5.0.1"
- mime-types "~2.1.7"
- oauth-sign "~0.8.1"
- performance-now "^0.2.0"
- qs "~6.4.0"
- safe-buffer "^5.0.1"
- stringstream "~0.0.4"
- tough-cookie "~2.3.0"
- tunnel-agent "^0.6.0"
- uuid "^3.0.0"
-
-request@^2.79.0:
- version "2.83.0"
- resolved "https://registry.yarnpkg.com/request/-/request-2.83.0.tgz#ca0b65da02ed62935887808e6f510381034e3356"
- dependencies:
- aws-sign2 "~0.7.0"
- aws4 "^1.6.0"
- caseless "~0.12.0"
- combined-stream "~1.0.5"
- extend "~3.0.1"
- forever-agent "~0.6.1"
- form-data "~2.3.1"
- har-validator "~5.0.3"
- hawk "~6.0.2"
- http-signature "~1.2.0"
- is-typedarray "~1.0.0"
- isstream "~0.1.2"
- json-stringify-safe "~5.0.1"
- mime-types "~2.1.17"
- oauth-sign "~0.8.2"
- performance-now "^2.1.0"
- qs "~6.5.1"
- safe-buffer "^5.1.1"
- stringstream "~0.0.5"
- tough-cookie "~2.3.3"
- tunnel-agent "^0.6.0"
- uuid "^3.1.0"
-
-require-directory@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
-
-require-main-filename@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1"
-
-requires-port@1.0.x, requires-port@1.x.x, requires-port@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff"
-
-resolve-dir@^0.1.0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-0.1.1.tgz#b219259a5602fac5c5c496ad894a6e8cc430261e"
- dependencies:
- expand-tilde "^1.2.2"
- global-modules "^0.2.3"
-
-resolve-url@~0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a"
-
-resolve@1.1.7:
- version "1.1.7"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b"
-
-resolve@^1.1.3, resolve@^1.1.4, resolve@^1.1.6, resolve@^1.1.7, resolve@^1.2.0:
- version "1.5.0"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.5.0.tgz#1f09acce796c9a762579f31b2c1cc4c3cddf9f36"
- dependencies:
- path-parse "^1.0.5"
-
-ret@~0.1.10:
- version "0.1.15"
- resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc"
-
-rework-import@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/rework-import/-/rework-import-2.1.0.tgz#c26ed2b53159ac7be2ec60da223ef89603c1ef1f"
- dependencies:
- css "^2.0.0"
- globby "^2.0.0"
- parse-import "^2.0.0"
- url-regex "^3.0.0"
-
-rework-plugin-function@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/rework-plugin-function/-/rework-plugin-function-1.0.2.tgz#12ce46fb5b29b5d935146683f6b98cf49d2373b9"
- dependencies:
- rework-visit "^1.0.0"
-
-rework-plugin-url@^1.0.1:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/rework-plugin-url/-/rework-plugin-url-1.1.0.tgz#ab53e8b1057b9d5ecc1c8273ff7db18608375c45"
- dependencies:
- rework-plugin-function "^1.0.0"
-
-rework-visit@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/rework-visit/-/rework-visit-1.0.0.tgz#9945b2803f219e2f7aca00adb8bc9f640f842c9a"
-
-rework@~1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/rework/-/rework-1.0.1.tgz#30806a841342b54510aa4110850cd48534144aa7"
- dependencies:
- convert-source-map "^0.3.3"
- css "^2.0.0"
-
-right-align@^0.1.1:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef"
- dependencies:
- align-text "^0.1.1"
-
-rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1:
- version "2.6.2"
- resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36"
- dependencies:
- glob "^7.0.5"
-
-ripemd160@0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-0.2.0.tgz#2bf198bde167cacfa51c0a928e84b68bbe171fce"
-
-ripemd160@^2.0.0, ripemd160@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.1.tgz#0f4584295c53a3628af7e6d79aca21ce57d1c6e7"
- dependencies:
- hash-base "^2.0.0"
- inherits "^2.0.1"
-
-run-async@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/run-async/-/run-async-0.1.0.tgz#c8ad4a5e110661e402a7d21b530e009f25f8e389"
- dependencies:
- once "^1.3.0"
-
-rx-lite@^2.5.2:
- version "2.5.2"
- resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-2.5.2.tgz#5fef42d4d6e76bab5199d2171327db709e58e634"
-
-safe-buffer@5.1.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
- version "5.1.1"
- resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853"
-
-sane@~1.5.0:
- version "1.5.0"
- resolved "https://registry.yarnpkg.com/sane/-/sane-1.5.0.tgz#a4adeae764d048621ecb27d5f9ecf513101939f3"
- dependencies:
- anymatch "^1.3.0"
- exec-sh "^0.2.0"
- fb-watchman "^1.8.0"
- minimatch "^3.0.2"
- minimist "^1.1.1"
- walker "~1.0.5"
- watch "~0.10.0"
-
-sax@^1.2.1, sax@~1.2.1:
- version "1.2.4"
- resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
-
-"semver@2 || 3 || 4 || 5", semver@^5.3.0:
- version "5.4.1"
- resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e"
-
-semver@^4.1.0:
- version "4.3.6"
- resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da"
-
-send@0.16.1:
- version "0.16.1"
- resolved "https://registry.yarnpkg.com/send/-/send-0.16.1.tgz#a70e1ca21d1382c11d0d9f6231deb281080d7ab3"
- dependencies:
- debug "2.6.9"
- depd "~1.1.1"
- destroy "~1.0.4"
- encodeurl "~1.0.1"
- escape-html "~1.0.3"
- etag "~1.8.1"
- fresh "0.5.2"
- http-errors "~1.6.2"
- mime "1.4.1"
- ms "2.0.0"
- on-finished "~2.3.0"
- range-parser "~1.2.0"
- statuses "~1.3.1"
-
-sequencify@~0.0.7:
- version "0.0.7"
- resolved "https://registry.yarnpkg.com/sequencify/-/sequencify-0.0.7.tgz#90cff19d02e07027fd767f5ead3e7b95d1e7380c"
-
-serve-index@^1.7.2:
- version "1.9.1"
- resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239"
- dependencies:
- accepts "~1.3.4"
- batch "0.6.1"
- debug "2.6.9"
- escape-html "~1.0.3"
- http-errors "~1.6.2"
- mime-types "~2.1.17"
- parseurl "~1.3.2"
-
-serve-static@1.13.1:
- version "1.13.1"
- resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.1.tgz#4c57d53404a761d8f2e7c1e8a18a47dbf278a719"
- dependencies:
- encodeurl "~1.0.1"
- escape-html "~1.0.3"
- parseurl "~1.3.2"
- send "0.16.1"
-
-set-blocking@^2.0.0, set-blocking@~2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
-
-set-immediate-shim@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61"
-
-setimmediate@^1.0.4, setimmediate@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285"
-
-setprototypeof@1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04"
-
-setprototypeof@1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656"
-
-sha.js@2.2.6:
- version "2.2.6"
- resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.2.6.tgz#17ddeddc5f722fb66501658895461977867315ba"
-
-sha.js@^2.4.0, sha.js@^2.4.8, sha.js@~2.4.4:
- version "2.4.9"
- resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.9.tgz#98f64880474b74f4a38b8da9d3c0f2d104633e7d"
- dependencies:
- inherits "^2.0.1"
- safe-buffer "^5.0.1"
-
-shasum@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/shasum/-/shasum-1.0.2.tgz#e7012310d8f417f4deb5712150e5678b87ae565f"
- dependencies:
- json-stable-stringify "~0.0.0"
- sha.js "~2.4.4"
-
-shebang-regex@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3"
-
-shell-quote@^1.4.2, shell-quote@^1.6.1:
- version "1.6.1"
- resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.6.1.tgz#f4781949cce402697127430ea3b3c5476f481767"
- dependencies:
- array-filter "~0.0.0"
- array-map "~0.0.0"
- array-reduce "~0.0.0"
- jsonify "~0.0.0"
-
-shell-quote@~0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-0.0.1.tgz#1a41196f3c0333c482323593d6886ecf153dd986"
-
-shelljs@^0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.3.0.tgz#3596e6307a781544f591f37da618360f31db57b1"
-
-shellwords@^0.1.0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b"
-
-sigmund@~1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590"
-
-signal-exit@^3.0.0:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
-
-simple-fmt@~0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/simple-fmt/-/simple-fmt-0.1.0.tgz#191bf566a59e6530482cb25ab53b4a8dc85c3a6b"
-
-simple-is@~0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/simple-is/-/simple-is-0.2.0.tgz#2abb75aade39deb5cc815ce10e6191164850baf0"
-
-slash@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"
-
-sntp@1.x.x:
- version "1.0.9"
- resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198"
- dependencies:
- hoek "2.x.x"
-
-sntp@2.x.x:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/sntp/-/sntp-2.1.0.tgz#2c6cec14fedc2222739caf9b5c3d85d1cc5a2cc8"
- dependencies:
- hoek "4.x.x"
-
-sockjs-client@^1.0.3:
- version "1.1.4"
- resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.1.4.tgz#5babe386b775e4cf14e7520911452654016c8b12"
- dependencies:
- debug "^2.6.6"
- eventsource "0.1.6"
- faye-websocket "~0.11.0"
- inherits "^2.0.1"
- json3 "^3.3.2"
- url-parse "^1.1.8"
-
-sockjs@^0.3.15:
- version "0.3.19"
- resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.19.tgz#d976bbe800af7bd20ae08598d582393508993c0d"
- dependencies:
- faye-websocket "^0.10.0"
- uuid "^3.0.1"
-
-sort-keys@^1.0.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad"
- dependencies:
- is-plain-obj "^1.0.0"
-
-source-list-map@^0.1.4, source-list-map@~0.1.7:
- version "0.1.8"
- resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-0.1.8.tgz#c550b2ab5427f6b3f21f5afead88c4f5587b2106"
-
-source-map-resolve@^0.3.0:
- version "0.3.1"
- resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.3.1.tgz#610f6122a445b8dd51535a2a71b783dfc1248761"
- dependencies:
- atob "~1.1.0"
- resolve-url "~0.2.1"
- source-map-url "~0.3.0"
- urix "~0.1.0"
-
-source-map-support@^0.2.10:
- version "0.2.10"
- resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.2.10.tgz#ea5a3900a1c1cb25096a0ae8cc5c2b4b10ded3dc"
- dependencies:
- source-map "0.1.32"
-
-source-map-support@^0.4.15:
- version "0.4.18"
- resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f"
- dependencies:
- source-map "^0.5.6"
-
-source-map-url@~0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.3.0.tgz#7ecaf13b57bcd09da8a40c5d269db33799d4aaf9"
-
-source-map@0.1.32:
- version "0.1.32"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.32.tgz#c8b6c167797ba4740a8ea33252162ff08591b266"
- dependencies:
- amdefine ">=0.0.4"
-
-source-map@0.4.x, source-map@^0.4.2, source-map@^0.4.4, source-map@~0.4.0, source-map@~0.4.1, source-map@~0.4.2:
- version "0.4.4"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b"
- dependencies:
- amdefine ">=0.0.4"
-
-source-map@0.5.6:
- version "0.5.6"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412"
-
-source-map@^0.1.38:
- version "0.1.43"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346"
- dependencies:
- amdefine ">=0.0.4"
-
-source-map@^0.5.0, source-map@^0.5.1, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.0, source-map@~0.5.1, source-map@~0.5.3, source-map@~0.5.6:
- version "0.5.7"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
-
-source-map@^0.6.1:
- version "0.6.1"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
-
-sourcemapped-stacktrace@^1.1.6:
- version "1.1.7"
- resolved "https://registry.yarnpkg.com/sourcemapped-stacktrace/-/sourcemapped-stacktrace-1.1.7.tgz#17e05374ff78b71a9d89ad3975a49f22725ba935"
- dependencies:
- source-map "0.5.6"
-
-sparkles@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.0.tgz#1acbbfb592436d10bbe8f785b7cc6f82815012c3"
-
-spdx-correct@~1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40"
- dependencies:
- spdx-license-ids "^1.0.2"
-
-spdx-expression-parse@~1.0.0:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c"
-
-spdx-license-ids@^1.0.2:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57"
-
-sprintf-js@~1.0.2:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
-
-sshpk@^1.7.0:
- version "1.13.1"
- resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.1.tgz#512df6da6287144316dc4c18fe1cf1d940739be3"
- dependencies:
- asn1 "~0.2.3"
- assert-plus "^1.0.0"
- dashdash "^1.12.0"
- getpass "^0.1.1"
- optionalDependencies:
- bcrypt-pbkdf "^1.0.0"
- ecc-jsbn "~0.1.1"
- jsbn "~0.1.0"
- tweetnacl "~0.14.0"
-
-stable@~0.1.3:
- version "0.1.6"
- resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.6.tgz#910f5d2aed7b520c6e777499c1f32e139fdecb10"
-
-stackframe@^0.3.1:
- version "0.3.1"
- resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-0.3.1.tgz#33aa84f1177a5548c8935533cbfeb3420975f5a4"
-
-"statuses@>= 1.3.1 < 2":
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087"
-
-statuses@~1.3.1:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e"
-
-stream-browserify@^2.0.0, stream-browserify@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz#66266ee5f9bdb9940a4e4514cafb43bb71e5c9db"
- dependencies:
- inherits "~2.0.1"
- readable-stream "^2.0.2"
-
-stream-cache@~0.0.1:
- version "0.0.2"
- resolved "https://registry.yarnpkg.com/stream-cache/-/stream-cache-0.0.2.tgz#1ac5ad6832428ca55667dbdee395dad4e6db118f"
-
-stream-combiner2@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/stream-combiner2/-/stream-combiner2-1.1.1.tgz#fb4d8a1420ea362764e21ad4780397bebcb41cbe"
- dependencies:
- duplexer2 "~0.1.0"
- readable-stream "^2.0.2"
-
-stream-combiner2@~1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/stream-combiner2/-/stream-combiner2-1.0.2.tgz#ba72a6b50cbfabfa950fc8bc87604bd01eb60671"
- dependencies:
- duplexer2 "~0.0.2"
- through2 "~0.5.1"
-
-stream-consume@~0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/stream-consume/-/stream-consume-0.1.0.tgz#a41ead1a6d6081ceb79f65b061901b6d8f3d1d0f"
-
-stream-http@^1.2.0:
- version "1.7.1"
- resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-1.7.1.tgz#d3d2a6e14c36a38b9dafb199aee7bbc570519978"
- dependencies:
- builtin-status-codes "^1.0.0"
- foreach "^2.0.5"
- indexof "0.0.1"
- inherits "^2.0.1"
- object-keys "^1.0.4"
- xtend "^4.0.0"
-
-stream-http@^2.0.0, stream-http@^2.3.1:
- version "2.7.2"
- resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.7.2.tgz#40a050ec8dc3b53b33d9909415c02c0bf1abfbad"
- dependencies:
- builtin-status-codes "^3.0.0"
- inherits "^2.0.1"
- readable-stream "^2.2.6"
- to-arraybuffer "^1.0.0"
- xtend "^4.0.0"
-
-stream-splicer@^1.1.0:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/stream-splicer/-/stream-splicer-1.3.2.tgz#3c0441be15b9bf4e226275e6dc83964745546661"
- dependencies:
- indexof "0.0.1"
- inherits "^2.0.1"
- isarray "~0.0.1"
- readable-stream "^1.1.13-1"
- readable-wrap "^1.0.0"
- through2 "^1.0.0"
-
-stream-splicer@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/stream-splicer/-/stream-splicer-2.0.0.tgz#1b63be438a133e4b671cc1935197600175910d83"
- dependencies:
- inherits "^2.0.1"
- readable-stream "^2.0.2"
-
-strict-uri-encode@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713"
-
-string-length@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/string-length/-/string-length-1.0.1.tgz#56970fb1c38558e9e70b728bf3de269ac45adfac"
- dependencies:
- strip-ansi "^3.0.0"
-
-string-width@^1.0.1, string-width@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"
- dependencies:
- code-point-at "^1.0.0"
- is-fullwidth-code-point "^1.0.0"
- strip-ansi "^3.0.0"
-
-string_decoder@^0.10.25, string_decoder@~0.10.0, string_decoder@~0.10.x:
- version "0.10.31"
- resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94"
-
-string_decoder@~1.0.0, string_decoder@~1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab"
- dependencies:
- safe-buffer "~5.1.0"
-
-stringmap@~0.2.2:
- version "0.2.2"
- resolved "https://registry.yarnpkg.com/stringmap/-/stringmap-0.2.2.tgz#556c137b258f942b8776f5b2ef582aa069d7d1b1"
-
-stringset@~0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/stringset/-/stringset-0.2.1.tgz#ef259c4e349344377fcd1c913dd2e848c9c042b5"
-
-stringstream@~0.0.4, stringstream@~0.0.5:
- version "0.0.5"
- resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878"
-
-strip-ansi@^0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-0.3.0.tgz#25f48ea22ca79187f3174a4db8759347bb126220"
- dependencies:
- ansi-regex "^0.2.1"
-
-strip-ansi@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-2.0.1.tgz#df62c1aa94ed2f114e1d0f21fd1d50482b79a60e"
- dependencies:
- ansi-regex "^1.0.0"
-
-strip-ansi@^3.0.0, strip-ansi@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
- dependencies:
- ansi-regex "^2.0.0"
-
-strip-bom@3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
-
-strip-bom@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-1.0.0.tgz#85b8862f3844b5a6d5ec8467a93598173a36f794"
- dependencies:
- first-chunk-stream "^1.0.0"
- is-utf8 "^0.2.0"
-
-strip-bom@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e"
- dependencies:
- is-utf8 "^0.2.0"
-
-strip-indent@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2"
- dependencies:
- get-stdin "^4.0.1"
-
-strip-json-comments@~1.0.1:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-1.0.4.tgz#1e15fbcac97d3ee99bf2d73b4c656b082bbafb91"
-
-strip-json-comments@~2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
-
-style-loader@^0.13.0:
- version "0.13.2"
- resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.13.2.tgz#74533384cf698c7104c7951150b49717adc2f3bb"
- dependencies:
- loader-utils "^1.0.2"
-
-styled-components@^1.2.1:
- version "1.4.6"
- resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-1.4.6.tgz#58f32e8a6ab510fb1481e901e838e0477f148b06"
- dependencies:
- buffer "^5.0.2"
- css-to-react-native "^1.0.6"
- fbjs "^0.8.7"
- inline-style-prefixer "^2.0.5"
- is-function "^1.0.1"
- is-plain-object "^2.0.1"
- prop-types "^15.5.4"
- supports-color "^3.1.2"
-
-subarg@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/subarg/-/subarg-1.0.0.tgz#f62cf17581e996b48fc965699f54c06ae268b8d2"
- dependencies:
- minimist "^1.1.0"
-
-supports-color@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-0.2.0.tgz#d92de2694eb3f67323973d7ae3d8b55b4c22190a"
-
-supports-color@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
-
-supports-color@^3.1.0, supports-color@^3.1.1, supports-color@^3.1.2, supports-color@^3.2.3:
- version "3.2.3"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6"
- dependencies:
- has-flag "^1.0.0"
-
-supports-color@^4.0.0, supports-color@^4.4.0:
- version "4.5.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b"
- dependencies:
- has-flag "^2.0.0"
-
-svgo@^0.7.0:
- version "0.7.2"
- resolved "https://registry.yarnpkg.com/svgo/-/svgo-0.7.2.tgz#9f5772413952135c6fefbf40afe6a4faa88b4bb5"
- dependencies:
- coa "~1.0.1"
- colors "~1.1.2"
- csso "~2.3.1"
- js-yaml "~3.7.0"
- mkdirp "~0.5.1"
- sax "~1.2.1"
- whet.extend "~0.9.9"
-
-symbol-tree@^3.2.1:
- version "3.2.2"
- resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6"
-
-syntax-error@^1.1.1:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/syntax-error/-/syntax-error-1.3.0.tgz#1ed9266c4d40be75dc55bf9bb1cb77062bb96ca1"
- dependencies:
- acorn "^4.0.3"
-
-tapable@^0.1.8, tapable@~0.1.8:
- version "0.1.10"
- resolved "https://registry.yarnpkg.com/tapable/-/tapable-0.1.10.tgz#29c35707c2b70e50d07482b5d202e8ed446dafd4"
-
-tar-pack@^3.4.0:
- version "3.4.1"
- resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.1.tgz#e1dbc03a9b9d3ba07e896ad027317eb679a10a1f"
- dependencies:
- debug "^2.2.0"
- fstream "^1.0.10"
- fstream-ignore "^1.0.5"
- once "^1.3.3"
- readable-stream "^2.1.4"
- rimraf "^2.5.1"
- tar "^2.2.1"
- uid-number "^0.0.6"
-
-tar@^2.2.1:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1"
- dependencies:
- block-stream "*"
- fstream "^1.0.2"
- inherits "2"
-
-temp-write@~0.1.0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/temp-write/-/temp-write-0.1.1.tgz#0b6467838dd77fbf7f62a0c93da879732ffda932"
- dependencies:
- graceful-fs "~2.0.0"
- tempfile "~0.1.2"
-
-tempfile@~0.1.2:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/tempfile/-/tempfile-0.1.3.tgz#7d6b710047339d39f847327a056dadf183103010"
- dependencies:
- uuid "~1.4.0"
-
-test-exclude@^4.1.1:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.1.1.tgz#4d84964b0966b0087ecc334a2ce002d3d9341e26"
- dependencies:
- arrify "^1.0.1"
- micromatch "^2.3.11"
- object-assign "^4.1.0"
- read-pkg-up "^1.0.1"
- require-main-filename "^1.0.1"
-
-text-table@~0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
-
-throat@^3.0.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/throat/-/throat-3.2.0.tgz#50cb0670edbc40237b9e347d7e1f88e4620af836"
-
-through2@^0.5.0, through2@~0.5.1:
- version "0.5.1"
- resolved "https://registry.yarnpkg.com/through2/-/through2-0.5.1.tgz#dfdd012eb9c700e2323fd334f38ac622ab372da7"
- dependencies:
- readable-stream "~1.0.17"
- xtend "~3.0.0"
-
-through2@^0.6.1:
- version "0.6.5"
- resolved "https://registry.yarnpkg.com/through2/-/through2-0.6.5.tgz#41ab9c67b29d57209071410e1d7a7a968cd3ad48"
- dependencies:
- readable-stream ">=1.0.33-1 <1.1.0-0"
- xtend ">=4.0.0 <4.1.0-0"
-
-through2@^1.0.0, through2@~1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/through2/-/through2-1.1.1.tgz#0847cbc4449f3405574dbdccd9bb841b83ac3545"
- dependencies:
- readable-stream ">=1.1.13-1 <1.2.0-0"
- xtend ">=4.0.0 <4.1.0-0"
-
-through2@^2.0.0:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be"
- dependencies:
- readable-stream "^2.1.5"
- xtend "~4.0.1"
-
-"through@>=2.2.7 <3", through@^2.3.6, through@~2.3.8:
- version "2.3.8"
- resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
-
-tildify@^1.0.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/tildify/-/tildify-1.2.0.tgz#dcec03f55dca9b7aa3e5b04f21817eb56e63588a"
- dependencies:
- os-homedir "^1.0.0"
-
-time-stamp@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.1.0.tgz#764a5a11af50561921b133f3b44e618687e0f5c3"
-
-time-stamp@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-2.0.0.tgz#95c6a44530e15ba8d6f4a3ecb8c3a3fac46da357"
-
-timers-browserify@^1.0.1:
- version "1.4.2"
- resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-1.4.2.tgz#c9c58b575be8407375cb5e2462dacee74359f41d"
- dependencies:
- process "~0.11.0"
-
-timers-browserify@^2.0.2:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.4.tgz#96ca53f4b794a5e7c0e1bd7cc88a372298fa01e6"
- dependencies:
- setimmediate "^1.0.4"
-
-tmpl@1.0.x:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1"
-
-to-arraybuffer@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43"
-
-to-double-quotes@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/to-double-quotes/-/to-double-quotes-1.0.2.tgz#bb6ed36c78634c3d64fd87a51ad5860dc594edfd"
- dependencies:
- get-stdin "^3.0.0"
-
-to-fast-properties@^1.0.0, to-fast-properties@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47"
-
-to-single-quotes@^1.0.3:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/to-single-quotes/-/to-single-quotes-1.0.4.tgz#2eea8199af26ca1171f5357c59e192d565ee5313"
- dependencies:
- get-stdin "^3.0.0"
-
-tough-cookie@^2.3.2, tough-cookie@~2.3.0, tough-cookie@~2.3.3:
- version "2.3.3"
- resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.3.tgz#0b618a5565b6dea90bf3425d04d55edc475a7561"
- dependencies:
- punycode "^1.4.1"
-
-tr46@~0.0.3:
- version "0.0.3"
- resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a"
-
-trim-newlines@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613"
-
-trim-right@^1.0.0, trim-right@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003"
-
-try-resolve@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/try-resolve/-/try-resolve-1.0.1.tgz#cfde6fabd72d63e5797cfaab873abbe8e700e912"
-
-tryit@^1.0.1:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/tryit/-/tryit-1.0.3.tgz#393be730a9446fd1ead6da59a014308f36c289cb"
-
-tryor@~0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/tryor/-/tryor-0.1.2.tgz#8145e4ca7caff40acde3ccf946e8b8bb75b4172b"
-
-tty-browserify@0.0.0, tty-browserify@~0.0.0:
- version "0.0.0"
- resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6"
-
-tunnel-agent@^0.6.0:
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd"
- dependencies:
- safe-buffer "^5.0.1"
-
-tweetnacl@^0.14.3, tweetnacl@~0.14.0:
- version "0.14.5"
- resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
-
-type-check@~0.3.1, type-check@~0.3.2:
- version "0.3.2"
- resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72"
- dependencies:
- prelude-ls "~1.1.2"
-
-type-is@~1.6.15:
- version "1.6.15"
- resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.15.tgz#cab10fb4909e441c82842eafe1ad646c81804410"
- dependencies:
- media-typer "0.3.0"
- mime-types "~2.1.15"
-
-typedarray@^0.0.6, typedarray@~0.0.5:
- version "0.0.6"
- resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
-
-ua-parser-js@^0.7.9:
- version "0.7.17"
- resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.17.tgz#e9ec5f9498b9ec910e7ae3ac626a805c4d09ecac"
-
-uglify-js@^2.6:
- version "2.8.29"
- resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd"
- dependencies:
- source-map "~0.5.1"
- yargs "~3.10.0"
- optionalDependencies:
- uglify-to-browserify "~1.0.0"
-
-uglify-js@~2.7.3:
- version "2.7.5"
- resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.7.5.tgz#4612c0c7baaee2ba7c487de4904ae122079f2ca8"
- dependencies:
- async "~0.2.6"
- source-map "~0.5.1"
- uglify-to-browserify "~1.0.0"
- yargs "~3.10.0"
-
-uglify-to-browserify@~1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7"
-
-uid-number@^0.0.6:
- version "0.0.6"
- resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81"
-
-umd@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/umd/-/umd-3.0.1.tgz#8ae556e11011f63c2596708a8837259f01b3d60e"
-
-unc-path-regex@^0.1.0:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa"
-
-uncontrollable@^4.1.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/uncontrollable/-/uncontrollable-4.1.0.tgz#e0358291252e1865222d90939b19f2f49f81c1a9"
- dependencies:
- invariant "^2.1.0"
-
-underscore@~1.4.4:
- version "1.4.4"
- resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.4.4.tgz#61a6a32010622afa07963bf325203cf12239d604"
-
-uniq@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff"
-
-uniqid@^4.0.0:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/uniqid/-/uniqid-4.1.1.tgz#89220ddf6b751ae52b5f72484863528596bb84c1"
- dependencies:
- macaddress "^0.2.8"
-
-uniqs@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02"
-
-unique-stream@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-1.0.0.tgz#d59a4a75427447d9aa6c91e70263f8d26a4b104b"
-
-unpipe@1.0.0, unpipe@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"
-
-urix@^0.1.0, urix@~0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72"
-
-url-parse@1.0.x:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.0.5.tgz#0854860422afdcfefeb6c965c662d4800169927b"
- dependencies:
- querystringify "0.0.x"
- requires-port "1.0.x"
-
-url-parse@^1.1.8:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.2.0.tgz#3a19e8aaa6d023ddd27dcc44cb4fc8f7fec23986"
- dependencies:
- querystringify "~1.0.0"
- requires-port "~1.0.0"
-
-url-regex@^3.0.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/url-regex/-/url-regex-3.2.0.tgz#dbad1e0c9e29e105dd0b1f09f6862f7fdb482724"
- dependencies:
- ip-regex "^1.0.1"
-
-url@^0.11.0, url@~0.11.0:
- version "0.11.0"
- resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1"
- dependencies:
- punycode "1.3.2"
- querystring "0.2.0"
-
-url@~0.10.1:
- version "0.10.3"
- resolved "https://registry.yarnpkg.com/url/-/url-0.10.3.tgz#021e4d9c7705f21bbf37d03ceb58767402774c64"
- dependencies:
- punycode "1.3.2"
- querystring "0.2.0"
-
-user-home@^1.0.0, user-home@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190"
-
-util-deprecate@~1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
-
-util@0.10.3, util@^0.10.3, util@~0.10.1:
- version "0.10.3"
- resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9"
- dependencies:
- inherits "2.0.1"
-
-utils-merge@1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713"
-
-uuid@^3.0.0, uuid@^3.0.1, uuid@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04"
-
-uuid@~1.4.0:
- version "1.4.2"
- resolved "https://registry.yarnpkg.com/uuid/-/uuid-1.4.2.tgz#453019f686966a6df83cdc5244e7c990ecc332fc"
-
-v8flags@^2.0.2:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.1.1.tgz#aab1a1fa30d45f88dd321148875ac02c0b55e5b4"
- dependencies:
- user-home "^1.1.1"
-
-validate-npm-package-license@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc"
- dependencies:
- spdx-correct "~1.0.0"
- spdx-expression-parse "~1.0.0"
-
-vary@~1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"
-
-vendors@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.1.tgz#37ad73c8ee417fb3d580e785312307d274847f22"
-
-verror@1.10.0:
- version "1.10.0"
- resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400"
- dependencies:
- assert-plus "^1.0.0"
- core-util-is "1.0.2"
- extsprintf "^1.2.0"
-
-vinyl-fs@^0.3.0:
- version "0.3.14"
- resolved "https://registry.yarnpkg.com/vinyl-fs/-/vinyl-fs-0.3.14.tgz#9a6851ce1cac1c1cea5fe86c0931d620c2cfa9e6"
- dependencies:
- defaults "^1.0.0"
- glob-stream "^3.1.5"
- glob-watcher "^0.0.6"
- graceful-fs "^3.0.0"
- mkdirp "^0.5.0"
- strip-bom "^1.0.0"
- through2 "^0.6.1"
- vinyl "^0.4.0"
-
-vinyl-source-stream@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/vinyl-source-stream/-/vinyl-source-stream-1.1.0.tgz#44cbe5108205279deb0c5653c094a2887938b1ab"
- dependencies:
- through2 "^0.6.1"
- vinyl "^0.4.3"
-
-vinyl-sourcemaps-apply@^0.2.0:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz#ab6549d61d172c2b1b87be5c508d239c8ef87705"
- dependencies:
- source-map "^0.5.1"
-
-vinyl@^0.2.1:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.2.3.tgz#bca938209582ec5a49ad538a00fa1f125e513252"
- dependencies:
- clone-stats "~0.0.1"
-
-vinyl@^0.4.0, vinyl@^0.4.3:
- version "0.4.6"
- resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.4.6.tgz#2f356c87a550a255461f36bbeb2a5ba8bf784847"
- dependencies:
- clone "^0.2.0"
- clone-stats "^0.0.1"
-
-vinyl@^0.5.0:
- version "0.5.3"
- resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.5.3.tgz#b0455b38fc5e0cf30d4325132e461970c2091cde"
- dependencies:
- clone "^1.0.0"
- clone-stats "^0.0.1"
- replace-ext "0.0.1"
-
-vm-browserify@0.0.4, vm-browserify@~0.0.1:
- version "0.0.4"
- resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-0.0.4.tgz#5d7ea45bbef9e4a6ff65f95438e0a87c357d5a73"
- dependencies:
- indexof "0.0.1"
-
-walker@~1.0.5:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb"
- dependencies:
- makeerror "1.0.x"
-
-warning@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/warning/-/warning-2.1.0.tgz#21220d9c63afc77a8c92111e011af705ce0c6901"
- dependencies:
- loose-envify "^1.0.0"
-
-warning@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/warning/-/warning-3.0.0.tgz#32e5377cb572de4ab04753bdf8821c01ed605b7c"
- dependencies:
- loose-envify "^1.0.0"
-
-watch@~0.10.0:
- version "0.10.0"
- resolved "https://registry.yarnpkg.com/watch/-/watch-0.10.0.tgz#77798b2da0f9910d595f1ace5b0c2258521f21dc"
-
-watchify@^3.0.0:
- version "3.9.0"
- resolved "https://registry.yarnpkg.com/watchify/-/watchify-3.9.0.tgz#f075fd2e8a86acde84cedba6e5c2a0bedd523d9e"
- dependencies:
- anymatch "^1.3.0"
- browserify "^14.0.0"
- chokidar "^1.0.0"
- defined "^1.0.0"
- outpipe "^1.1.0"
- through2 "^2.0.0"
- xtend "^4.0.0"
-
-watchpack@^0.2.1:
- version "0.2.9"
- resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-0.2.9.tgz#62eaa4ab5e5ba35fdfc018275626e3c0f5e3fb0b"
- dependencies:
- async "^0.9.0"
- chokidar "^1.0.0"
- graceful-fs "^4.1.2"
-
-webidl-conversions@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871"
-
-webidl-conversions@^4.0.0:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad"
-
-webpack-core@~0.6.9:
- version "0.6.9"
- resolved "https://registry.yarnpkg.com/webpack-core/-/webpack-core-0.6.9.tgz#fc571588c8558da77be9efb6debdc5a3b172bdc2"
- dependencies:
- source-list-map "~0.1.7"
- source-map "~0.4.1"
-
-webpack-dev-middleware@^1.10.2:
- version "1.12.2"
- resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.12.2.tgz#f8fc1120ce3b4fc5680ceecb43d777966b21105e"
- dependencies:
- memory-fs "~0.4.1"
- mime "^1.5.0"
- path-is-absolute "^1.0.0"
- range-parser "^1.0.3"
- time-stamp "^2.0.0"
-
-webpack-dev-server@^1.12.1:
- version "1.16.5"
- resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-1.16.5.tgz#0cbd5f2d2ac8d4e593aacd5c9702e7bbd5e59892"
- dependencies:
- compression "^1.5.2"
- connect-history-api-fallback "^1.3.0"
- express "^4.13.3"
- http-proxy-middleware "~0.17.1"
- open "0.0.5"
- optimist "~0.6.1"
- serve-index "^1.7.2"
- sockjs "^0.3.15"
- sockjs-client "^1.0.3"
- stream-cache "~0.0.1"
- strip-ansi "^3.0.0"
- supports-color "^3.1.1"
- webpack-dev-middleware "^1.10.2"
-
-webpack@^1.12.4:
- version "1.15.0"
- resolved "https://registry.yarnpkg.com/webpack/-/webpack-1.15.0.tgz#4ff31f53db03339e55164a9d468ee0324968fe98"
- dependencies:
- acorn "^3.0.0"
- async "^1.3.0"
- clone "^1.0.2"
- enhanced-resolve "~0.9.0"
- interpret "^0.6.4"
- loader-utils "^0.2.11"
- memory-fs "~0.3.0"
- mkdirp "~0.5.0"
- node-libs-browser "^0.7.0"
- optimist "~0.6.0"
- supports-color "^3.1.0"
- tapable "~0.1.8"
- uglify-js "~2.7.3"
- watchpack "^0.2.1"
- webpack-core "~0.6.9"
-
-websocket-driver@>=0.5.1:
- version "0.7.0"
- resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.0.tgz#0caf9d2d755d93aee049d4bdd0d3fe2cca2a24eb"
- dependencies:
- http-parser-js ">=0.4.0"
- websocket-extensions ">=0.1.1"
-
-websocket-extensions@>=0.1.1:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29"
-
-whatwg-encoding@^1.0.1:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.3.tgz#57c235bc8657e914d24e1a397d3c82daee0a6ba3"
- dependencies:
- iconv-lite "0.4.19"
-
-whatwg-fetch@>=0.10.0:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz#9c84ec2dcf68187ff00bc64e1274b442176e1c84"
-
-whatwg-url@^4.3.0:
- version "4.8.0"
- resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-4.8.0.tgz#d2981aa9148c1e00a41c5a6131166ab4683bbcc0"
- dependencies:
- tr46 "~0.0.3"
- webidl-conversions "^3.0.0"
-
-whet.extend@~0.9.9:
- version "0.9.9"
- resolved "https://registry.yarnpkg.com/whet.extend/-/whet.extend-0.9.9.tgz#f877d5bf648c97e5aa542fadc16d6a259b9c11a1"
-
-which-module@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f"
-
-which@^1.1.1, which@^1.2.12:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a"
- dependencies:
- isexe "^2.0.0"
-
-wide-align@^1.1.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710"
- dependencies:
- string-width "^1.0.2"
-
-window-size@0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d"
-
-window-size@^0.1.2:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.4.tgz#f8e1aa1ee5a53ec5bf151ffa09742a6ad7697876"
-
-wordwrap@0.0.2:
- version "0.0.2"
- resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f"
-
-wordwrap@~0.0.2:
- version "0.0.3"
- resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107"
-
-wordwrap@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb"
-
-worker-farm@^1.3.1:
- version "1.5.2"
- resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.5.2.tgz#32b312e5dc3d5d45d79ef44acc2587491cd729ae"
- dependencies:
- errno "^0.1.4"
- xtend "^4.0.1"
-
-wrap-ansi@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85"
- dependencies:
- string-width "^1.0.1"
- strip-ansi "^3.0.1"
-
-wrappy@1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
-
-write@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757"
- dependencies:
- mkdirp "^0.5.1"
-
-xml-escape@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/xml-escape/-/xml-escape-1.0.0.tgz#00963d697b2adf0c185c4e04e73174ba9b288eb2"
-
-xml-name-validator@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-2.0.1.tgz#4d8b8f1eccd3419aa362061becef515e1e559635"
-
-"xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"
-
-xtend@~3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/xtend/-/xtend-3.0.0.tgz#5cce7407baf642cba7becda568111c493f59665a"
-
-y18n@^3.2.0, y18n@^3.2.1:
- version "3.2.1"
- resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41"
-
-yargs-parser@^4.2.0:
- version "4.2.1"
- resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-4.2.1.tgz#29cceac0dc4f03c6c87b4a9f217dd18c9f74871c"
- dependencies:
- camelcase "^3.0.0"
-
-yargs@^6.3.0:
- version "6.6.0"
- resolved "https://registry.yarnpkg.com/yargs/-/yargs-6.6.0.tgz#782ec21ef403345f830a808ca3d513af56065208"
- dependencies:
- camelcase "^3.0.0"
- cliui "^3.2.0"
- decamelize "^1.1.1"
- get-caller-file "^1.0.1"
- os-locale "^1.4.0"
- read-pkg-up "^1.0.1"
- require-directory "^2.1.1"
- require-main-filename "^1.0.1"
- set-blocking "^2.0.0"
- string-width "^1.0.2"
- which-module "^1.0.0"
- y18n "^3.2.1"
- yargs-parser "^4.2.0"
-
-yargs@~3.10.0:
- version "3.10.0"
- resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1"
- dependencies:
- camelcase "^1.0.2"
- cliui "^2.1.0"
- decamelize "^1.0.0"
- window-size "0.1.0"
-
-yargs@~3.27.0:
- version "3.27.0"
- resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.27.0.tgz#21205469316e939131d59f2da0c6d7f98221ea40"
- dependencies:
- camelcase "^1.2.1"
- cliui "^2.1.0"
- decamelize "^1.0.0"
- os-locale "^1.4.0"
- window-size "^0.1.2"
- y18n "^3.2.0"