{"version":3,"file":"vendor.react-through.3f076d66d94e0c5c.js","mappings":"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AA0C;;AAE5F,kDAAkD,aAAa,yFAAyF;;AAExJ,2CAA2C,+DAA+D,uGAAuG,yEAAyE,eAAe,0EAA0E,GAAG;;AAEtX;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA,yBAAyB;AACzB;;AAEA;AACA;;AAEA;AACA,wCAAwC,oBAAoB;AAC5D;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,WAAW;AACX;AACA;AACA,WAAW;AACX;AACA;AACA,WAAW;AACX;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,wCAAwC,0BAA0B;AAClE,0EAA0E,gCAAgC,UAAU,0BAA0B;AAC9I;AACA,OAAO;;AAEP;AACA,KAAK;AACL;AACA,KAAK;;AAEL;AACA;AACA;;AAEA,kBAAe","sources":["webpack://admin/./node_modules/react-through/lib/Dummy.js","webpack://admin/./node_modules/react-through/lib/throughInterface.js","webpack://admin/./node_modules/react-through/lib/throughDirect.js","webpack://admin/./node_modules/react-through/lib/createAdvAgent.js","webpack://admin/./node_modules/react-through/lib/Item.js","webpack://admin/./node_modules/react-through/lib/throughArea.js","webpack://admin/./node_modules/react-through/lib/ThroughProvider.js","webpack://admin/./node_modules/react-through/lib/throughAgentFactory.js","webpack://admin/./node_modules/react-through/lib/propsFromProp.js","webpack://admin/./node_modules/react-through/lib/hasComplex.js","webpack://admin/./node_modules/react-through/lib/hasDiff.js","webpack://admin/./node_modules/react-through/lib/createAgent.js","webpack://admin/./node_modules/react-through/lib/Through.js","webpack://admin/./node_modules/react-through/lib/index.js","webpack://admin/./node_modules/react-through/lib/throughContainer.js","webpack://admin/./node_modules/react-through/lib/throughAgent.js"],"sourcesContent":["'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar Dummy = function Dummy() {\n  return null;\n};\n\nexports.default = Dummy;","'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 _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\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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 throughInterface = function throughInterface(area) {\n  return function (AgentComponent) {\n    var _class, _temp;\n\n    var ThroughInterface = (_temp = _class = function (_React$Component) {\n      _inherits(ThroughInterface, _React$Component);\n\n      function ThroughInterface() {\n        _classCallCheck(this, ThroughInterface);\n\n        return _possibleConstructorReturn(this, (ThroughInterface.__proto__ || Object.getPrototypeOf(ThroughInterface)).apply(this, arguments));\n      }\n\n      _createClass(ThroughInterface, [{\n        key: 'render',\n        value: function render() {\n          var _this2 = this;\n\n          return _react2.default.createElement(AgentComponent, _extends({}, this.props, _defineProperty({}, area, {\n            update: function update(key, props) {\n              var syncUpdate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;\n\n              _this2.context.through.update(area, key, props, syncUpdate);\n            },\n            add: function add(key) {\n              _this2.context.through.add(area, key);\n            },\n            remove: function remove(key) {\n              _this2.context.through.remove(area, key);\n            }\n          })));\n        }\n      }]);\n\n      return ThroughInterface;\n    }(_react2.default.Component), _class.contextTypes = {\n      through: _propTypes2.default.object\n    }, _temp);\n\n\n    return ThroughInterface;\n  };\n};\n\nexports.default = throughInterface;","'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 _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _Through = require('./Through');\n\nvar _Through2 = _interopRequireDefault(_Through);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar throughDirect = function throughDirect(areaName) {\n  return function (Component) {\n    return function (props) {\n      return _react2.default.createElement(\n        _Through2.default,\n        { area: areaName, direct: true, 'default': {} },\n        function (data) {\n          return _react2.default.createElement(Component, _extends({}, props, data));\n        }\n      );\n    };\n  };\n};\n\nexports.default = throughDirect;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\n\nvar _throughAgentFactory = require('./throughAgentFactory');\n\nvar _throughAgentFactory2 = _interopRequireDefault(_throughAgentFactory);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction createAdvAgent(area, key) {\n  return (0, _throughAgentFactory2.default)(area, key, true);\n}\n\nexports.default = createAdvAgent;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar Item = function Item() {\n  return null;\n};\n\nexports.default = Item;","'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 _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _Through = require('./Through');\n\nvar _Through2 = _interopRequireDefault(_Through);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar throughArea = function throughArea(areaName) {\n  return function (Component) {\n    return function (props) {\n      return _react2.default.createElement(\n        _Through2.default,\n        { area: areaName },\n        function (data) {\n          return _react2.default.createElement(Component, _extends({}, props, data));\n        }\n      );\n    };\n  };\n};\n\nexports.default = throughArea;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.default = 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 _class, _temp, _initialiseProps;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _hasDiff = require('./hasDiff');\n\nvar _hasDiff2 = _interopRequireDefault(_hasDiff);\n\nvar _hasComplex = require('./hasComplex');\n\nvar _hasComplex2 = _interopRequireDefault(_hasComplex);\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 ThroughProvider = (_temp = _class = function (_React$Component) {\n  _inherits(ThroughProvider, _React$Component);\n\n  function ThroughProvider(props) {\n    _classCallCheck(this, ThroughProvider);\n\n    var _this = _possibleConstructorReturn(this, (ThroughProvider.__proto__ || Object.getPrototypeOf(ThroughProvider)).call(this, props));\n\n    _initialiseProps.call(_this);\n\n    _this.areas = {};\n    return _this;\n  }\n\n  _createClass(ThroughProvider, [{\n    key: 'getChildContext',\n    value: function getChildContext() {\n      return {\n        through: {\n          update: this.update,\n          add: this.add,\n          remove: this.remove,\n          subscribe: this.subscribe\n        }\n      };\n    }\n  }, {\n    key: 'checkArgs',\n    value: function checkArgs(area, key, props) {\n      if (process.env.NODE_ENV !== 'production') {\n        if (!(typeof area === 'string' || area instanceof String) || !(typeof key === 'string' || key instanceof String) || !(props instanceof Object && !(props instanceof Array) && !(props instanceof Function))) {\n          throw new Error(\"react-through: type error: \" + \"through.[add|update|remove](area:string, key:string, props:Object)\");\n        }\n      }\n    }\n  }, {\n    key: 'render',\n    value: function render() {\n      return _react2.default.Children.only(this.props.children);\n    }\n  }]);\n\n  return ThroughProvider;\n}(_react2.default.Component), _class.childContextTypes = {\n  through: _propTypes2.default.object.isRequired\n}, _class.propTypes = {\n  children: _propTypes2.default.element\n}, _initialiseProps = function _initialiseProps() {\n  var _this2 = this;\n\n  this.area = function (area) {\n    if (!Object.prototype.hasOwnProperty.call(_this2.areas, area)) {\n      _this2.areas[area] = {\n        name: area,\n        listeners: [],\n        counters: {},\n        data: {}\n      };\n    }\n    return _this2.areas[area];\n  };\n\n  this.notify = function (area, syncUpdate) {\n    area = _this2.area(area);\n\n    area.listeners.forEach(function (listener) {\n      return listener(area.data, syncUpdate);\n    });\n  };\n\n  this.subscribe = function (area, listener) {\n    area = _this2.area(area);\n\n    area.listeners.push(listener);\n    listener(area.data);\n\n    return function () {\n      area.listeners = area.listeners.filter(function (item) {\n        return item !== listener;\n      });\n    };\n  };\n\n  this.update = function (area, key, props) {\n    var syncUpdate = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : undefined;\n\n    _this2.checkArgs(area, key, props);\n    area = _this2.area(area);\n\n    if (process.env.NODE_ENV !== 'production') {\n      if (!area.counters[key]) {\n        throw new Error(\"react-through: bearing key must be added before update\");\n      }\n    }\n\n    var prevProps = area.data[key] || {};\n\n    if (!(0, _hasDiff2.default)(prevProps, props)) return;\n\n    if (undefined === syncUpdate) {\n      syncUpdate = !(0, _hasComplex2.default)(props);\n    }\n\n    var data = Object.assign({}, area.data);\n    data[key] = _extends({}, props);\n    area.data = data;\n    _this2.notify(area.name, syncUpdate);\n  };\n\n  this.add = function (area, key) {\n    _this2.checkArgs(area, key, {});\n    area = _this2.area(area);\n    area.counters[key] = area.counters[key] ? area.counters[key] + 1 : 1;\n\n    if (process.env.NODE_ENV !== 'production') {\n      if (2 < area.counters[key]) {\n        throw new Error(\"react-through: bearing key adding must be not more 2, call remove()\");\n      }\n    }\n  };\n\n  this.remove = function (area, key) {\n    _this2.checkArgs(area, key, {});\n    area = _this2.area(area);\n    var count = area.counters[key];\n    count = count ? count - 1 : 0;\n    area.counters[key] = count;\n\n    if (!count && Object.prototype.hasOwnProperty.call(area.data, key)) {\n      var data = Object.assign({}, area.data);\n      delete area.counters[key];\n      delete data[key];\n      area.data = data;\n      _this2.notify(area.name, true);\n    }\n  };\n}, _temp);\nexports.default = ThroughProvider;","'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 _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\nexports.createThroughAgentClass = createThroughAgentClass;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _hasDiff = require('./hasDiff');\n\nvar _hasDiff2 = _interopRequireDefault(_hasDiff);\n\nvar _hasComplex = require('./hasComplex');\n\nvar _hasComplex2 = _interopRequireDefault(_hasComplex);\n\nvar _throughAgent = require('./throughAgent');\n\nvar _throughAgent2 = _interopRequireDefault(_throughAgent);\n\nvar _Item = require('./Item');\n\nvar _Item2 = _interopRequireDefault(_Item);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _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; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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\nfunction createThroughAgentClass(area, key, syncUpdate) {\n  var _class, _temp, _initialiseProps;\n\n  var ThroughAgent = (_temp = _class = function (_React$Component) {\n    _inherits(ThroughAgent, _React$Component);\n\n    function ThroughAgent(props) {\n      _classCallCheck(this, ThroughAgent);\n\n      var _this = _possibleConstructorReturn(this, (ThroughAgent.__proto__ || Object.getPrototypeOf(ThroughAgent)).call(this));\n\n      _initialiseProps.call(_this);\n\n      _this.configureItem(props);\n      _this.state = {\n        configureItem: _this.configureItem,\n        props: {}\n      };\n      return _this;\n    }\n\n    _createClass(ThroughAgent, [{\n      key: 'render',\n      value: function render() {\n        return null;\n      }\n    }], [{\n      key: 'getDerivedStateFromProps',\n      value: function getDerivedStateFromProps(props, state) {\n        if ((0, _hasDiff2.default)(props, state.props)) {\n          state.configureItem(props);\n          return _extends({}, state, { props: props });\n        }\n        return null;\n      }\n    }]);\n\n    return ThroughAgent;\n  }(_react2.default.Component), _class.propTypes = _defineProperty({}, area, _propTypes2.default.object), _initialiseProps = function _initialiseProps() {\n    this.configureItem = syncUpdate === undefined ? function (props) {\n      var notused = props[area],\n          data = _objectWithoutProperties(props, [area]);\n\n      var syncUpdate = !(0, _hasComplex2.default)(data);\n      props[area].item(_react2.default.createElement(_Item2.default, data), syncUpdate);\n    } : function (props) {\n      var notused = props[area],\n          data = _objectWithoutProperties(props, [area]);\n\n      props[area].item(_react2.default.createElement(_Item2.default, data));\n    };\n  }, _temp);\n\n\n  ThroughAgent.displayName = 'ThroughAgent.' + area;\n\n  return ThroughAgent;\n}\n\n// this function with *two* params was documented and may be in use\nvar throughAgentFactory = function throughAgentFactory(area, key) {\n  var syncUpdate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;\n\n\n  if (!(typeof area === 'string' || area instanceof String)) {\n    throw new Error(\"type error: throughAgentFactory(area:string, key:string|function)\");\n  }\n\n  var ThroughAgent = createThroughAgentClass(area, key, syncUpdate);\n\n  return (0, _throughAgent2.default)(area, key)(ThroughAgent);\n};\n\nexports.default = throughAgentFactory;","'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 _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _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; }\n\nvar propsFromProp = function propsFromProp(prop) {\n  return function (Component) {\n    return function (_ref) {\n      var props = _ref[prop],\n          rest = _objectWithoutProperties(_ref, [prop]);\n\n      return _react2.default.createElement(Component, _extends({}, rest, props || {}));\n    };\n  };\n};\n\nexports.default = propsFromProp;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\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\nfunction hasComplex(props) {\n  // reflect types in the documentation if changed\n  var quicks = ['string', 'number', 'undefined', 'boolean', 'symbol'];\n\n  return !!Object.keys(props).filter(function (key) {\n    return Object.prototype.hasOwnProperty.call(props, key);\n  }).map(function (key) {\n    return props[key];\n  }).find(function (prop) {\n    return !quicks.find(function (quickTypeName) {\n      return (typeof prop === 'undefined' ? 'undefined' : _typeof(prop)) === quickTypeName;\n    });\n  });\n}\n\nexports.default = hasComplex;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nfunction hasDiff(prevProps, props) {\n  var pkeys = Object.keys(prevProps);\n  var nkeys = Object.keys(props);\n\n  if (pkeys.length !== nkeys.length) return true;\n\n  return !!Array.prototype.find.call(nkeys, function (key) {\n    return prevProps[key] !== props[key];\n  });\n}\n\nexports.default = hasDiff;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\n\nvar _throughAgentFactory = require('./throughAgentFactory');\n\nvar _throughAgentFactory2 = _interopRequireDefault(_throughAgentFactory);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction createAgent(area, key) {\n  return (0, _throughAgentFactory2.default)(area, key);\n}\n\nexports.default = createAgent;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\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 _class, _temp;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\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 MAX_DATA_NUM = 1000000;\n\nvar Through = (_temp = _class = function (_React$Component) {\n  _inherits(Through, _React$Component);\n\n  function Through(props, context) {\n    _classCallCheck(this, Through);\n\n    var _this = _possibleConstructorReturn(this, (Through.__proto__ || Object.getPrototypeOf(Through)).call(this, props, context));\n\n    _this.doUpdate = function (data, syncUpdate) {\n      _this.data = data;\n      ++_this.dataNum;\n      if (!_this.timer && _this.dataNum > MAX_DATA_NUM) {\n        _this.dataNum = 0;\n      }\n\n      if (syncUpdate) {\n        if (_this.canSetState) {\n          _this.setState({ dataNum: _this.dataNum });\n        }\n        return;\n      }\n\n      if (!_this.timer) {\n        _this.timer = setTimeout(function () {\n          if (_this.canSetState) {\n            _this.setState({ dataNum: _this.dataNum });\n          }\n          _this.timer = undefined;\n        }, 0);\n      }\n    };\n\n    _this.state = {\n      dataNum: MAX_DATA_NUM\n    };\n    _this.dataNum = MAX_DATA_NUM;\n    _this.data = {};\n    _this.timer = undefined;\n    _this.mounted = false;\n    _this.canSetState = false;\n    return _this;\n  }\n\n  _createClass(Through, [{\n    key: 'componentDidMount',\n    value: function componentDidMount() {\n      this.updateArea(this.props.area);\n      this.canSetState = true;\n      if (this.state.dataNum != this.dataNum) {\n        this.doUpdate(this.data, true);\n      }\n    }\n  }, {\n    key: 'componentWillUnmount',\n    value: function componentWillUnmount() {\n      this.updateArea(undefined);\n      this.canSetState = false;\n    }\n  }, {\n    key: 'updateArea',\n    value: function updateArea(area) {\n      if (this.unsubscribe) this.unsubscribe();\n      if (area) this.unsubscribe = this.context.through.subscribe(area, this.doUpdate);\n    }\n  }, {\n    key: 'render',\n    value: function render() {\n      var _props = this.props,\n          direct = _props.direct,\n          bearingKey = _props.bearingKey,\n          defval = _props.default,\n          defaultValue = _props.defaultValue,\n          _props$map = _props.map,\n          map = _props$map === undefined ? function (a) {\n        return a;\n      } : _props$map;\n\n\n      var key = bearingKey ? bearingKey : direct === true ? 'default' : direct;\n\n      var data = key ? this.data[key] : this.data;\n\n      return this.props.children(data ? map(data) : defaultValue || defval);\n    }\n  }]);\n\n  return Through;\n}(_react2.default.Component), _class.contextTypes = {\n  through: _propTypes2.default.object\n}, _class.propTypes = {\n  area: _propTypes2.default.string.isRequired,\n  direct: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.bool]),\n  bearingKey: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.bool]),\n  default: _propTypes2.default.any,\n  defaultValue: _propTypes2.default.any,\n  map: _propTypes2.default.func\n}, _temp);\nexports.default = Through;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.Dummy = exports.Item = exports.hasComplex = exports.hasDiff = exports.propsFromProp = exports.createAdvAgent = exports.createAgent = exports.throughInterface = exports.throughAgentFactory = exports.throughAgent = exports.throughDirect = exports.throughArea = exports.throughContainer = exports.ThroughProvider = undefined;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _ThroughProvider2 = require('./ThroughProvider');\n\nvar _ThroughProvider3 = _interopRequireDefault(_ThroughProvider2);\n\nvar _throughContainer2 = require('./throughContainer');\n\nvar _throughContainer3 = _interopRequireDefault(_throughContainer2);\n\nvar _throughArea2 = require('./throughArea');\n\nvar _throughArea3 = _interopRequireDefault(_throughArea2);\n\nvar _throughDirect2 = require('./throughDirect');\n\nvar _throughDirect3 = _interopRequireDefault(_throughDirect2);\n\nvar _throughAgent2 = require('./throughAgent');\n\nvar _throughAgent3 = _interopRequireDefault(_throughAgent2);\n\nvar _throughAgentFactory2 = require('./throughAgentFactory');\n\nvar _throughAgentFactory3 = _interopRequireDefault(_throughAgentFactory2);\n\nvar _throughInterface2 = require('./throughInterface');\n\nvar _throughInterface3 = _interopRequireDefault(_throughInterface2);\n\nvar _createAgent2 = require('./createAgent');\n\nvar _createAgent3 = _interopRequireDefault(_createAgent2);\n\nvar _createAdvAgent2 = require('./createAdvAgent');\n\nvar _createAdvAgent3 = _interopRequireDefault(_createAdvAgent2);\n\nvar _propsFromProp2 = require('./propsFromProp');\n\nvar _propsFromProp3 = _interopRequireDefault(_propsFromProp2);\n\nvar _hasDiff2 = require('./hasDiff');\n\nvar _hasDiff3 = _interopRequireDefault(_hasDiff2);\n\nvar _hasComplex2 = require('./hasComplex');\n\nvar _hasComplex3 = _interopRequireDefault(_hasComplex2);\n\nvar _Item2 = require('./Item');\n\nvar _Item3 = _interopRequireDefault(_Item2);\n\nvar _Dummy2 = require('./Dummy');\n\nvar _Dummy3 = _interopRequireDefault(_Dummy2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.ThroughProvider = _ThroughProvider3.default;\nexports.throughContainer = _throughContainer3.default;\nexports.throughArea = _throughArea3.default;\nexports.throughDirect = _throughDirect3.default;\nexports.throughAgent = _throughAgent3.default;\nexports.throughAgentFactory = _throughAgentFactory3.default;\nexports.throughInterface = _throughInterface3.default;\nexports.createAgent = _createAgent3.default;\nexports.createAdvAgent = _createAdvAgent3.default;\nexports.propsFromProp = _propsFromProp3.default;\nexports.hasDiff = _hasDiff3.default;\nexports.hasComplex = _hasComplex3.default;\nexports.Item = _Item3.default;\nexports.Dummy = _Dummy3.default;","'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 _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _Through = require('./Through');\n\nvar _Through2 = _interopRequireDefault(_Through);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar throughContainer = function throughContainer(areaName) {\n  return function (Component) {\n    return function (props) {\n      return _react2.default.createElement(\n        _Through2.default,\n        { area: areaName },\n        function (data) {\n          return _react2.default.createElement(Component, _extends({}, props, _defineProperty({}, areaName, data)));\n        }\n      );\n    };\n  };\n};\n\nexports.default = throughContainer;","'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 _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\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\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 throughAgent = function throughAgent(area, key) {\n  return function (AgentComponent) {\n    var _class, _temp;\n\n    var getKey = null;\n\n    if (!(typeof area === 'string' || area instanceof String)) {\n      throw new Error(\"type error: throughAgent(area:string, key:string|function)\");\n    }\n\n    if (typeof key === 'string' || key instanceof String) {\n      getKey = function getKey(props) {\n        return props[key];\n      };\n    } else if (typeof key === 'function') {\n      getKey = key;\n    } else if (key === undefined || key === null) {\n      getKey = function getKey(props) {\n        return 'default';\n      };\n    } else {\n      throw new Error(\"type error: throughAgent(area:string, key:string|function)\");\n    }\n\n    var ThroughAgent = (_temp = _class = function (_React$Component) {\n      _inherits(ThroughAgent, _React$Component);\n\n      function ThroughAgent(props, context) {\n        _classCallCheck(this, ThroughAgent);\n\n        var _this = _possibleConstructorReturn(this, (ThroughAgent.__proto__ || Object.getPrototypeOf(ThroughAgent)).call(this, props, context));\n\n        _this.componentWillUnmount = function () {\n          _this.update({});\n        };\n\n        _this.item = function (elem) {\n          var syncUpdate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n          var key = elem && getKey(elem.props);\n          var data = !elem || !key ? {} : _defineProperty({}, key, elem.props);\n          _this.update(data, syncUpdate);\n        };\n\n        _this.items = function (elem) {\n          var syncUpdate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n          var data = {};\n          _react2.default.Children.forEach(elem.props.children, function (elem) {\n            var key = elem && getKey(elem.props);\n            if (!elem || !key) {\n              return;\n            }\n            data[key] = elem.props;\n          });\n          _this.update(data, syncUpdate);\n        };\n\n        _this.update = function (data, syncUpdate) {\n          var add = Object.keys(data).filter(function (key) {\n            return !Object.prototype.hasOwnProperty.call(_this.data, key);\n          });\n          var remove = Object.keys(_this.data).filter(function (key) {\n            return !Object.prototype.hasOwnProperty.call(data, key);\n          });\n          remove.forEach(function (key) {\n            return _this.context.through.remove(area, key);\n          });\n          add.forEach(function (key) {\n            return _this.context.through.add(area, key);\n          });\n          Object.keys(data).forEach(function (key) {\n            return _this.context.through.update(area, key, data[key], syncUpdate);\n          });\n          _this.data = data;\n        };\n\n        _this.data = {};\n        _this.update(_this.data);\n        return _this;\n      }\n\n      _createClass(ThroughAgent, [{\n        key: 'render',\n        value: function render() {\n          var item = this.item,\n              items = this.items;\n\n          var through = Object.assign({ item: item, items: items }, this.props.through);\n          return _react2.default.createElement(AgentComponent, _extends({}, this.props, _defineProperty({}, area, { item: item, items: items })));\n        }\n      }]);\n\n      return ThroughAgent;\n    }(_react2.default.Component), _class.contextTypes = {\n      through: _propTypes2.default.object\n    }, _temp);\n\n    return ThroughAgent;\n  };\n};\n\nexports.default = throughAgent;"],"names":[],"sourceRoot":""}