{"version":3,"file":"js/3946-e94f86985f8f67713dbd.js","mappings":";;;;;;AAAa;;AAEb,8CAA6C;AAC7C;AACA,CAAC,EAAC;;AAEF,iCAAiC,2CAA2C,gBAAgB,kBAAkB,OAAO,2BAA2B,wDAAwD,gCAAgC,uDAAuD,+DAA+D,yDAAyD,qEAAqE,6DAA6D,wBAAwB;;AAEjjB,aAAa,mBAAO,CAAC,KAAO;;AAE5B;;AAEA,aAAa,mBAAO,CAAC,KAAS;;AAE9B;;AAEA,uCAAuC,uCAAuC;;AAE9E,kDAAkD,0CAA0C;;AAE5F,kDAAkD,aAAa,yFAAyF;;AAExJ,2CAA2C,+DAA+D,uGAAuG,yEAAyE,eAAe,0EAA0E,GAAG;;AAEtX;AACA;AACA;;AAEA,kBAAe;AACf;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA,KAAK;AACL;AACA;;;;;;;ACzDa;;AAEb,8CAA6C;AAC7C;AACA,CAAC,EAAC;AACF,kBAAkB,GAAG,gBAAgB;;AAErC,iCAAiC,2CAA2C,gBAAgB,kBAAkB,OAAO,2BAA2B,wDAAwD,gCAAgC,uDAAuD,+DAA+D,yDAAyD,qEAAqE,6DAA6D,wBAAwB;;AAEjjB,aAAa,mBAAO,CAAC,KAAO;;AAE5B;;AAEA,gBAAgB,mBAAO,CAAC,KAAW;;AAEnC;;AAEA,iBAAiB,mBAAO,CAAC,IAAY;;AAErC;;AAEA,aAAa,mBAAO,CAAC,KAAe;;AAEpC,oBAAoB,mBAAO,CAAC,KAAsB;;AAElD;;AAEA,gBAAgB,mBAAO,CAAC,KAAkB;;AAE1C;;AAEA,gBAAgB,mBAAO,CAAC,KAAkB;;AAE1C;;AAEA,iBAAiB,mBAAO,CAAC,KAAa;;AAEtC;;AAEA,uCAAuC,uCAAuC;;AAE9E,kDAAkD,0CAA0C;;AAE5F,kDAAkD,aAAa,yFAAyF;;AAExJ,2CAA2C,+DAA+D,uGAAuG,yEAAyE,eAAe,0EAA0E,GAAG,yHAAyH;AAC/e;AACA;;;AAGA,kCAAkC;AAClC;AACA;AACA;;AAEA;AACA;AACA;AACA,qCAAqC;AACrC;AACA;AACA;AACA,GAAG;AACH;AACA,EAAE;AACF;AACA;AACA,6CAA6C,gCAAgC;;AAE7E;AACA;AACA,YAAY,MAAM;AAClB,YAAY,MAAM;AAClB,YAAY;AACZ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;;AAEA;AACA,gDAAgD;AAChD,oGAAoG;;AAEpG;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA,yCAAyC;;AAEzC,mIAAmI;;AAEnI;AACA;;AAEA;AACA;AACA,YAAY,MAAM;AAClB,YAAY;AACZ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;;AAEA,mIAAmI;;AAEnI;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY,OAAO;AACnB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,2IAA2I,SAAS,2BAA2B,qCAAqC;AACpN;AACA,GAAG;;AAEH;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,eAAe,gBAAgB;AAC/B,kBAAe;AACf,kBAAkB;;;;;;;AC7VL;;AAEb,8CAA6C;AAC7C;AACA,CAAC,EAAC;AACF,kBAAe;AACf;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;AChDa;;AAEb,8CAA6C;AAC7C;AACA,CAAC,EAAC;AACF,UAAU;AACV,WAAW;AACX;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;;;;;;ACzBa;;AAEb,8CAA6C;AAC7C;AACA,CAAC,EAAC;;AAEF;AACA;AACA;;AAEA,kBAAe;AACf;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;;;;;;AC3Ca;;AAEb,8CAA6C;AAC7C;AACA,CAAC,EAAC;AACF,kBAAe;AACf;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,MAAM;AACN;AACA;AACA;AACA;AACA","sources":["webpack://geosnapshot/./node_modules/react-lazyload/lib/decorator.js","webpack://geosnapshot/./node_modules/react-lazyload/lib/index.js","webpack://geosnapshot/./node_modules/react-lazyload/lib/utils/debounce.js","webpack://geosnapshot/./node_modules/react-lazyload/lib/utils/event.js","webpack://geosnapshot/./node_modules/react-lazyload/lib/utils/scrollParent.js","webpack://geosnapshot/./node_modules/react-lazyload/lib/utils/throttle.js"],"sourcesContent":["'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 _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _index = require('./index');\n\nvar _index2 = _interopRequireDefault(_index);\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 getDisplayName = function getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n};\n\nexports.default = function () {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return function lazyload(WrappedComponent) {\n return function (_Component) {\n _inherits(LazyLoadDecorated, _Component);\n\n function LazyLoadDecorated() {\n _classCallCheck(this, LazyLoadDecorated);\n\n var _this = _possibleConstructorReturn(this, (LazyLoadDecorated.__proto__ || Object.getPrototypeOf(LazyLoadDecorated)).call(this));\n\n _this.displayName = 'LazyLoad' + getDisplayName(WrappedComponent);\n return _this;\n }\n\n _createClass(LazyLoadDecorated, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n _index2.default,\n options,\n _react2.default.createElement(WrappedComponent, this.props)\n );\n }\n }]);\n\n return LazyLoadDecorated;\n }(_react.Component);\n };\n};","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.forceCheck = exports.lazyload = undefined;\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 _event = require('./utils/event');\n\nvar _scrollParent = require('./utils/scrollParent');\n\nvar _scrollParent2 = _interopRequireDefault(_scrollParent);\n\nvar _debounce = require('./utils/debounce');\n\nvar _debounce2 = _interopRequireDefault(_debounce);\n\nvar _throttle = require('./utils/throttle');\n\nvar _throttle2 = _interopRequireDefault(_throttle);\n\nvar _decorator = require('./decorator');\n\nvar _decorator2 = _interopRequireDefault(_decorator);\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 * react-lazyload\n */\n\n\nvar defaultBoundingClientRect = { top: 0, right: 0, bottom: 0, left: 0, width: 0, height: 0 };\nvar LISTEN_FLAG = 'data-lazyload-listened';\nvar listeners = [];\nvar pending = [];\n\n// try to handle passive events\nvar passiveEventSupported = false;\ntry {\n var opts = Object.defineProperty({}, 'passive', {\n get: function get() {\n passiveEventSupported = true;\n }\n });\n window.addEventListener('test', null, opts);\n} catch (e) {}\n// if they are supported, setup the optional params\n// IMPORTANT: FALSE doubles as the default CAPTURE value!\nvar passiveEvent = passiveEventSupported ? { capture: false, passive: true } : false;\n\n/**\n * Check if `component` is visible in overflow container `parent`\n * @param {node} component React component\n * @param {node} parent component's scroll parent\n * @return {bool}\n */\nvar checkOverflowVisible = function checkOverflowVisible(component, parent) {\n var node = _reactDom2.default.findDOMNode(component);\n\n var parentTop = void 0;\n var parentHeight = void 0;\n\n try {\n var _parent$getBoundingCl = parent.getBoundingClientRect();\n\n parentTop = _parent$getBoundingCl.top;\n parentHeight = _parent$getBoundingCl.height;\n } catch (e) {\n parentTop = defaultBoundingClientRect.top;\n parentHeight = defaultBoundingClientRect.height;\n }\n\n var windowInnerHeight = window.innerHeight || document.documentElement.clientHeight;\n\n // calculate top and height of the intersection of the element's scrollParent and viewport\n var intersectionTop = Math.max(parentTop, 0); // intersection's top relative to viewport\n var intersectionHeight = Math.min(windowInnerHeight, parentTop + parentHeight) - intersectionTop; // height\n\n // check whether the element is visible in the intersection\n var top = void 0;\n var height = void 0;\n\n try {\n var _node$getBoundingClie = node.getBoundingClientRect();\n\n top = _node$getBoundingClie.top;\n height = _node$getBoundingClie.height;\n } catch (e) {\n top = defaultBoundingClientRect.top;\n height = defaultBoundingClientRect.height;\n }\n\n var offsetTop = top - intersectionTop; // element's top relative to intersection\n\n var offsets = Array.isArray(component.props.offset) ? component.props.offset : [component.props.offset, component.props.offset]; // Be compatible with previous API\n\n return offsetTop - offsets[0] <= intersectionHeight && offsetTop + height + offsets[1] >= 0;\n};\n\n/**\n * Check if `component` is visible in document\n * @param {node} component React component\n * @return {bool}\n */\nvar checkNormalVisible = function checkNormalVisible(component) {\n var node = _reactDom2.default.findDOMNode(component);\n\n // If this element is hidden by css rules somehow, it's definitely invisible\n if (!(node.offsetWidth || node.offsetHeight || node.getClientRects().length)) return false;\n\n var top = void 0;\n var elementHeight = void 0;\n\n try {\n var _node$getBoundingClie2 = node.getBoundingClientRect();\n\n top = _node$getBoundingClie2.top;\n elementHeight = _node$getBoundingClie2.height;\n } catch (e) {\n top = defaultBoundingClientRect.top;\n elementHeight = defaultBoundingClientRect.height;\n }\n\n var windowInnerHeight = window.innerHeight || document.documentElement.clientHeight;\n\n var offsets = Array.isArray(component.props.offset) ? component.props.offset : [component.props.offset, component.props.offset]; // Be compatible with previous API\n\n return top - offsets[0] <= windowInnerHeight && top + elementHeight + offsets[1] >= 0;\n};\n\n/**\n * Detect if element is visible in viewport, if so, set `visible` state to true.\n * If `once` prop is provided true, remove component as listener after checkVisible\n *\n * @param {React} component React component that respond to scroll and resize\n */\nvar checkVisible = function checkVisible(component) {\n var node = _reactDom2.default.findDOMNode(component);\n if (!node) {\n return;\n }\n\n var parent = (0, _scrollParent2.default)(node);\n var isOverflow = component.props.overflow && parent !== node.ownerDocument && parent !== document && parent !== document.documentElement;\n var visible = isOverflow ? checkOverflowVisible(component, parent) : checkNormalVisible(component);\n if (visible) {\n // Avoid extra render if previously is visible\n if (!component.visible) {\n if (component.props.once) {\n pending.push(component);\n }\n\n component.visible = true;\n component.forceUpdate();\n }\n } else if (!(component.props.once && component.visible)) {\n component.visible = false;\n if (component.props.unmountIfInvisible) {\n component.forceUpdate();\n }\n }\n};\n\nvar purgePending = function purgePending() {\n pending.forEach(function (component) {\n var index = listeners.indexOf(component);\n if (index !== -1) {\n listeners.splice(index, 1);\n }\n });\n\n pending = [];\n};\n\nvar lazyLoadHandler = function lazyLoadHandler() {\n for (var i = 0; i < listeners.length; ++i) {\n var listener = listeners[i];\n checkVisible(listener);\n }\n // Remove `once` component in listeners\n purgePending();\n};\n\n// Depending on component's props\nvar delayType = void 0;\nvar finalLazyLoadHandler = null;\n\nvar isString = function isString(string) {\n return typeof string === 'string';\n};\n\nvar LazyLoad = function (_Component) {\n _inherits(LazyLoad, _Component);\n\n function LazyLoad(props) {\n _classCallCheck(this, LazyLoad);\n\n var _this = _possibleConstructorReturn(this, (LazyLoad.__proto__ || Object.getPrototypeOf(LazyLoad)).call(this, props));\n\n _this.visible = false;\n return _this;\n }\n\n _createClass(LazyLoad, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n // It's unlikely to change delay type on the fly, this is mainly\n // designed for tests\n var scrollport = window;\n var scrollContainer = this.props.scrollContainer;\n\n if (scrollContainer) {\n if (isString(scrollContainer)) {\n scrollport = scrollport.document.querySelector(scrollContainer);\n }\n }\n var needResetFinalLazyLoadHandler = this.props.debounce !== undefined && delayType === 'throttle' || delayType === 'debounce' && this.props.debounce === undefined;\n\n if (needResetFinalLazyLoadHandler) {\n (0, _event.off)(scrollport, 'scroll', finalLazyLoadHandler, passiveEvent);\n (0, _event.off)(window, 'resize', finalLazyLoadHandler, passiveEvent);\n finalLazyLoadHandler = null;\n }\n\n if (!finalLazyLoadHandler) {\n if (this.props.debounce !== undefined) {\n finalLazyLoadHandler = (0, _debounce2.default)(lazyLoadHandler, typeof this.props.debounce === 'number' ? this.props.debounce : 300);\n delayType = 'debounce';\n } else if (this.props.throttle !== undefined) {\n finalLazyLoadHandler = (0, _throttle2.default)(lazyLoadHandler, typeof this.props.throttle === 'number' ? this.props.throttle : 300);\n delayType = 'throttle';\n } else {\n finalLazyLoadHandler = lazyLoadHandler;\n }\n }\n\n if (this.props.overflow) {\n var parent = (0, _scrollParent2.default)(_reactDom2.default.findDOMNode(this));\n if (parent && typeof parent.getAttribute === 'function') {\n var listenerCount = 1 + +parent.getAttribute(LISTEN_FLAG);\n if (listenerCount === 1) {\n parent.addEventListener('scroll', finalLazyLoadHandler, passiveEvent);\n }\n parent.setAttribute(LISTEN_FLAG, listenerCount);\n }\n } else if (listeners.length === 0 || needResetFinalLazyLoadHandler) {\n var _props = this.props,\n scroll = _props.scroll,\n resize = _props.resize;\n\n\n if (scroll) {\n (0, _event.on)(scrollport, 'scroll', finalLazyLoadHandler, passiveEvent);\n }\n\n if (resize) {\n (0, _event.on)(window, 'resize', finalLazyLoadHandler, passiveEvent);\n }\n }\n\n listeners.push(this);\n checkVisible(this);\n }\n }, {\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate() {\n return this.visible;\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n if (this.props.overflow) {\n var parent = (0, _scrollParent2.default)(_reactDom2.default.findDOMNode(this));\n if (parent && typeof parent.getAttribute === 'function') {\n var listenerCount = +parent.getAttribute(LISTEN_FLAG) - 1;\n if (listenerCount === 0) {\n parent.removeEventListener('scroll', finalLazyLoadHandler, passiveEvent);\n parent.removeAttribute(LISTEN_FLAG);\n } else {\n parent.setAttribute(LISTEN_FLAG, listenerCount);\n }\n }\n }\n\n var index = listeners.indexOf(this);\n if (index !== -1) {\n listeners.splice(index, 1);\n }\n\n if (listeners.length === 0) {\n (0, _event.off)(window, 'resize', finalLazyLoadHandler, passiveEvent);\n (0, _event.off)(window, 'scroll', finalLazyLoadHandler, passiveEvent);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n return this.visible ? this.props.children : this.props.placeholder ? this.props.placeholder : _react2.default.createElement('div', { style: { height: this.props.height }, className: 'lazyload-placeholder' });\n }\n }]);\n\n return LazyLoad;\n}(_react.Component);\n\nLazyLoad.propTypes = {\n once: _propTypes2.default.bool,\n height: _propTypes2.default.oneOfType([_propTypes2.default.number, _propTypes2.default.string]),\n offset: _propTypes2.default.oneOfType([_propTypes2.default.number, _propTypes2.default.arrayOf(_propTypes2.default.number)]),\n overflow: _propTypes2.default.bool,\n resize: _propTypes2.default.bool,\n scroll: _propTypes2.default.bool,\n children: _propTypes2.default.node,\n throttle: _propTypes2.default.oneOfType([_propTypes2.default.number, _propTypes2.default.bool]),\n debounce: _propTypes2.default.oneOfType([_propTypes2.default.number, _propTypes2.default.bool]),\n placeholder: _propTypes2.default.node,\n scrollContainer: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n unmountIfInvisible: _propTypes2.default.bool\n};\n\nLazyLoad.defaultProps = {\n once: false,\n offset: 0,\n overflow: false,\n resize: false,\n scroll: true,\n unmountIfInvisible: false\n};\n\nvar lazyload = exports.lazyload = _decorator2.default;\nexports.default = LazyLoad;\nexports.forceCheck = lazyLoadHandler;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = debounce;\nfunction debounce(func, wait, immediate) {\n var timeout = void 0;\n var args = void 0;\n var context = void 0;\n var timestamp = void 0;\n var result = void 0;\n\n var later = function later() {\n var last = +new Date() - timestamp;\n\n if (last < wait && last >= 0) {\n timeout = setTimeout(later, wait - last);\n } else {\n timeout = null;\n if (!immediate) {\n result = func.apply(context, args);\n if (!timeout) {\n context = null;\n args = null;\n }\n }\n }\n };\n\n return function debounced() {\n context = this;\n args = arguments;\n timestamp = +new Date();\n\n var callNow = immediate && !timeout;\n if (!timeout) {\n timeout = setTimeout(later, wait);\n }\n\n if (callNow) {\n result = func.apply(context, args);\n context = null;\n args = null;\n }\n\n return result;\n };\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.on = on;\nexports.off = off;\nfunction on(el, eventName, callback, opts) {\n opts = opts || false;\n if (el.addEventListener) {\n el.addEventListener(eventName, callback, opts);\n } else if (el.attachEvent) {\n el.attachEvent(\"on\" + eventName, function (e) {\n callback.call(el, e || window.event);\n });\n }\n}\n\nfunction off(el, eventName, callback, opts) {\n opts = opts || false;\n if (el.removeEventListener) {\n el.removeEventListener(eventName, callback, opts);\n } else if (el.detachEvent) {\n el.detachEvent(\"on\" + eventName, callback);\n }\n}","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\n/**\n * @fileOverview Find scroll parent\n */\n\nexports.default = function (node) {\n if (!node) {\n return document.documentElement;\n }\n\n var excludeStaticParent = node.style.position === 'absolute';\n var overflowRegex = /(scroll|auto)/;\n var parent = node;\n\n while (parent) {\n if (!parent.parentNode) {\n return node.ownerDocument || document.documentElement;\n }\n\n var style = window.getComputedStyle(parent);\n var position = style.position;\n var overflow = style.overflow;\n var overflowX = style['overflow-x'];\n var overflowY = style['overflow-y'];\n\n if (position === 'static' && excludeStaticParent) {\n parent = parent.parentNode;\n continue;\n }\n\n if (overflowRegex.test(overflow) && overflowRegex.test(overflowX) && overflowRegex.test(overflowY)) {\n return parent;\n }\n\n parent = parent.parentNode;\n }\n\n return node.ownerDocument || node.documentElement || document.documentElement;\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = throttle;\n/*eslint-disable */\nfunction throttle(fn, threshhold, scope) {\n threshhold || (threshhold = 250);\n var last, deferTimer;\n return function () {\n var context = scope || this;\n\n var now = +new Date(),\n args = arguments;\n if (last && now < last + threshhold) {\n // hold on to it\n clearTimeout(deferTimer);\n deferTimer = setTimeout(function () {\n last = now;\n fn.apply(context, args);\n }, threshhold);\n } else {\n last = now;\n fn.apply(context, args);\n }\n };\n}"],"names":[],"sourceRoot":""}