{"version":3,"sources":["webpack://_N_E/./node_modules/@arsenal/arsenal/modules/formatNumber.js","webpack://_N_E/./node_modules/@arsenal/arsenal/node_modules/core-js/modules/es6.regexp.replace.js","webpack://_N_E/./node_modules/@babel/runtime-corejs2/core-js/parse-float.js","webpack://_N_E/./node_modules/@babel/runtime-corejs2/node_modules/core-js/library/fn/parse-float.js","webpack://_N_E/./node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_parse-float.js","webpack://_N_E/./node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_string-trim.js","webpack://_N_E/./node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/_string-ws.js","webpack://_N_E/./node_modules/@babel/runtime-corejs2/node_modules/core-js/library/modules/es6.parse-float.js","webpack://_N_E/./node_modules/lodash.throttle/index.js","webpack://_N_E/./node_modules/react-scroll/modules/components/Button.js","webpack://_N_E/./node_modules/react-scroll/modules/components/Element.js","webpack://_N_E/./node_modules/react-scroll/modules/components/Link.js","webpack://_N_E/./node_modules/react-scroll/modules/index.js","webpack://_N_E/./node_modules/react-scroll/modules/mixins/Helpers.js","webpack://_N_E/./node_modules/react-scroll/modules/mixins/animate-scroll.js","webpack://_N_E/./node_modules/react-scroll/modules/mixins/cancel-events.js","webpack://_N_E/./node_modules/react-scroll/modules/mixins/passive-event-listeners.js","webpack://_N_E/./node_modules/react-scroll/modules/mixins/scroll-element.js","webpack://_N_E/./node_modules/react-scroll/modules/mixins/scroll-events.js","webpack://_N_E/./node_modules/react-scroll/modules/mixins/scroll-hash.js","webpack://_N_E/./node_modules/react-scroll/modules/mixins/scroll-link.js","webpack://_N_E/./node_modules/react-scroll/modules/mixins/scroll-spy.js","webpack://_N_E/./node_modules/react-scroll/modules/mixins/scroller.js","webpack://_N_E/./node_modules/react-scroll/modules/mixins/smooth.js","webpack://_N_E/./node_modules/react-scroll/modules/mixins/utils.js"],"names":["_interopRequireDefault","Object","defineProperty","exports","value","default","_parseFloat2","formatNumber","n","thousandsSeparated","res","replace","toFixed","split","Math","floor","_default","module","anObject","toObject","toLength","toInteger","advanceStringIndex","regExpExec","max","min","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","defined","REPLACE","$replace","maybeCallNative","searchValue","replaceValue","O","this","fn","undefined","call","String","regexp","done","rx","S","functionalReplace","global","fullUnicode","unicode","lastIndex","results","result","push","it","accumulatedResult","nextSourcePosition","i","length","matched","position","index","captures","j","namedCaptures","groups","replacerArgs","concat","replacement","apply","getSubstitution","slice","str","tailPos","m","symbols","match","ch","capture","charAt","f","$parseFloat","$trim","Infinity","string","$export","fails","spaces","space","ltrim","RegExp","rtrim","exporter","KEY","exec","ALIAS","exp","FORCE","trim","P","F","TYPE","G","parseFloat","FUNC_ERROR_TEXT","reTrim","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","parseInt","freeGlobal","g","freeSelf","self","root","Function","objectToString","prototype","toString","nativeMax","nativeMin","now","Date","debounce","func","wait","options","lastArgs","lastThis","maxWait","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","TypeError","invokeFunc","time","args","thisArg","leadingEdge","setTimeout","timerExpired","shouldInvoke","timeSinceLastCall","trailingEdge","remainingWait","debounced","isInvoking","arguments","toNumber","isObject","cancel","clearTimeout","flush","type","isObjectLike","isSymbol","other","valueOf","isBinary","test","_createClass","defineProperties","target","props","descriptor","enumerable","configurable","writable","key","Constructor","protoProps","staticProps","_react2","_scrollLink2","obj","__esModule","_classCallCheck","instance","_possibleConstructorReturn","ReferenceError","ButtonElement","_React$Component","__proto__","getPrototypeOf","subClass","superClass","create","constructor","setPrototypeOf","_inherits","createElement","children","Component","_extends","assign","source","hasOwnProperty","_scrollElement2","_propTypes2","ElementWrapper","_this2","newProps","parentBindings","ref","el","domNode","propTypes","name","id","LinkElement","_ref","_temp","_this","_len","Array","_key","render","_Link2","_Button2","_Element2","_scroller2","_scrollEvents2","_scrollSpy2","_animateScroll2","_Helpers2","Link","Button","Element","scroller","Events","scrollSpy","animateScroll","ScrollLink","ScrollElement","Helpers","React","defaultScroller","PropTypes","scrollHash","protoTypes","to","isRequired","containerId","container","object","activeClass","spy","bool","smooth","oneOfType","offset","number","delay","isDynamic","onClick","duration","absolute","onSetActive","onSetInactive","ignoreCancelEvents","hashSpy","spyThrottle","Scroll","customScroller","console","warn","_initialiseProps","state","active","document","getElementById","nodeType","scrollSpyContainer","getScrollSpyContainer","isMounted","mount","mapContainer","addStateHandler","stateHandler","addSpyHandler","spyHandler","setState","unmount","className","prop","handleClick","scrollTo","event","stopPropagation","preventDefault","getActiveLink","y","isInitialized","element","elemTopBound","elemBottomBound","containerTop","getBoundingClientRect","top","get","cords","height","offsetY","isInside","isOutside","activeLink","setActiveLink","getHash","changeHash","updateStates","defaultProps","_React$Component2","_this3","childBindings","window","registerElems","prevProps","unregister","register","_smooth2","_cancelEvents2","getAnimationType","defaultEasing","requestAnimationFrameHelper","requestAnimationFrame","webkitRequestAnimationFrame","currentWindowProperties","callback","getTime","currentPositionX","containerElement","data","body","scrollLeft","supportPageOffset","pageXOffset","isCSS1Compat","compatMode","documentElement","currentPositionY","scrollTop","pageYOffset","easing","timestamp","delta","round","targetPosition","startPosition","start","progress","percent","currentPosition","ceil","horizontal","easedAnimate","bind","registered","setContainer","animateTopScroll","scrollOffset","delayTimeout","subscribe","isNaN","proceedOptions","scrollToTop","scrollToBottom","scrollWidth","offsetWidth","html","clientWidth","scrollContainerWidth","scrollHeight","offsetHeight","clientHeight","scrollContainerHeight","toPosition","scrollMore","_passiveEventListeners","events","cancelEvent","forEach","addPassiveEventListener","eventName","listener","supportsPassiveOption","opts","addEventListener","e","passive","removePassiveEventListener","removeEventListener","scrollEvent","evtName","remove","_utils","_utils2","mountFlag","initialized","containers","handleHashChange","initStateFromHash","hash","isInit","saveHashHistory","updateHash","_scrollHash2","_React$PureComponent","PureComponent","x","elemLeftBound","elemRightBound","containerLeft","left","width","offsetX","_cords","_props$saveHashHistor","_props$saveHashHistor2","_saveHashHistory","_lodash","_lodash2","spyCallbacks","spySetState","scrollSpyContainers","throttle","eventHandler","throttleAmount","eventThrottler","scrollHandler","indexOf","c","handler","s","splice","update","__mapped","__activeLink","getElementsByName","getElementsByClassName","link","pow","linear","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","getElementOffsetInfoUntil","predicate","offsetTop","currentOffsetParent","offsetParent","historyUpdate","hashVal","substring","hashToUpdate","curLoc","location","urlToPush","pathname","search","history","pushState","replaceState","filterElementInContainer","contains","compareDocumentPosition","t","scrollX","getComputedStyle","offsetLeft","scrollY","_getElementOffsetInfo","Error","isDocument"],"mappings":"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","file":"static/chunks/2331-6e06bac2259c0bafb2c9.js","sourcesContent":["\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs2/helpers/interopRequireDefault\");\n\nrequire(\"core-js/modules/es6.object.define-property\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nrequire(\"core-js/modules/es6.regexp.split\");\n\nrequire(\"core-js/modules/es6.regexp.replace\");\n\nvar _parseFloat2 = _interopRequireDefault(require(\"@babel/runtime-corejs2/core-js/parse-float\"));\n\n/**\n * n 需要转换的数字,会对万和亿进行简化\n */\nfunction formatNumber(n, thousandsSeparated) {\n var res;\n\n if (typeof n !== 'number') {\n n = (0, _parseFloat2.default)(n) ? (0, _parseFloat2.default)(n) : 0;\n }\n\n if (thousandsSeparated) {\n return (n + '').replace(/(?=\\B(?:\\d{3})+$)/g, ',');\n }\n\n if (n < 1e4) {\n return n + '';\n }\n\n if (n < 1e5) {\n res = (n / 1e4).toFixed(1);\n return res.split('.')[1] === '0' ? res.split('.')[0] + '万' : res + '万';\n }\n\n if (n < 1e8) {\n return Math.floor(n / 1e4) + '万';\n }\n\n if (n < 1e9) {\n res = (n / 1e8).toFixed(1);\n return res.split('.')[1] === '0' ? res.split('.')[0] + '亿' : res + '亿';\n }\n\n return Math.floor(n / 1e8) + '亿';\n}\n\nformatNumber.default = formatNumber;\nvar _default = formatNumber;\nexports.default = _default;\nmodule.exports = exports[\"default\"];","'use strict';\n\nvar anObject = require('./_an-object');\nvar toObject = require('./_to-object');\nvar toLength = require('./_to-length');\nvar toInteger = require('./_to-integer');\nvar advanceStringIndex = require('./_advance-string-index');\nvar regExpExec = require('./_regexp-exec-abstract');\nvar max = Math.max;\nvar min = Math.min;\nvar floor = Math.floor;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&`']|\\d\\d?|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&`']|\\d\\d?)/g;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\nrequire('./_fix-re-wks')('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {\n return [\n // `String.prototype.replace` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = defined(this);\n var fn = searchValue == undefined ? undefined : searchValue[REPLACE];\n return fn !== undefined\n ? fn.call(searchValue, O, replaceValue)\n : $replace.call(String(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n var res = maybeCallNative($replace, regexp, this, replaceValue);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n results.push(result);\n if (!global) break;\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n var matched = String(result[0]);\n var position = max(min(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n\n // https://tc39.github.io/ecma262/#sec-getsubstitution\n function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return $replace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n }\n});\n","module.exports = require(\"core-js/library/fn/parse-float\");","require('../modules/es6.parse-float');\nmodule.exports = require('../modules/_core').parseFloat;\n","var $parseFloat = require('./_global').parseFloat;\nvar $trim = require('./_string-trim').trim;\n\nmodule.exports = 1 / $parseFloat(require('./_string-ws') + '-0') !== -Infinity ? function parseFloat(str) {\n var string = $trim(String(str), 3);\n var result = $parseFloat(string);\n return result === 0 && string.charAt(0) == '-' ? -0 : result;\n} : $parseFloat;\n","var $export = require('./_export');\nvar defined = require('./_defined');\nvar fails = require('./_fails');\nvar spaces = require('./_string-ws');\nvar space = '[' + spaces + ']';\nvar non = '\\u200b\\u0085';\nvar ltrim = RegExp('^' + space + space + '*');\nvar rtrim = RegExp(space + space + '*$');\n\nvar exporter = function (KEY, exec, ALIAS) {\n var exp = {};\n var FORCE = fails(function () {\n return !!spaces[KEY]() || non[KEY]() != non;\n });\n var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];\n if (ALIAS) exp[ALIAS] = fn;\n $export($export.P + $export.F * FORCE, 'String', exp);\n};\n\n// 1 -> String#trimLeft\n// 2 -> String#trimRight\n// 3 -> String#trim\nvar trim = exporter.trim = function (string, TYPE) {\n string = String(defined(string));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n};\n\nmodule.exports = exporter;\n","module.exports = '\\x09\\x0A\\x0B\\x0C\\x0D\\x20\\xA0\\u1680\\u180E\\u2000\\u2001\\u2002\\u2003' +\n '\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","var $export = require('./_export');\nvar $parseFloat = require('./_parse-float');\n// 18.2.4 parseFloat(string)\n$export($export.G + $export.F * (parseFloat != $parseFloat), { parseFloat: $parseFloat });\n","/**\n * lodash (Custom Build) \n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the `TypeError` message for \"Functions\" methods. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/** Used to match leading and trailing whitespace. */\nvar reTrim = /^\\s+|\\s+$/g;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n result = wait - timeSinceLastCall;\n\n return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\n/**\n * Creates a throttled function that only invokes `func` at most once per\n * every `wait` milliseconds. The throttled function comes with a `cancel`\n * method to cancel delayed `func` invocations and a `flush` method to\n * immediately invoke them. Provide `options` to indicate whether `func`\n * should be invoked on the leading and/or trailing edge of the `wait`\n * timeout. The `func` is invoked with the last arguments provided to the\n * throttled function. Subsequent calls to the throttled function return the\n * result of the last `func` invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the throttled function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.throttle` and `_.debounce`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to throttle.\n * @param {number} [wait=0] The number of milliseconds to throttle invocations to.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=true]\n * Specify invoking on the leading edge of the timeout.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new throttled function.\n * @example\n *\n * // Avoid excessively updating the position while scrolling.\n * jQuery(window).on('scroll', _.throttle(updatePosition, 100));\n *\n * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes.\n * var throttled = _.throttle(renewToken, 300000, { 'trailing': false });\n * jQuery(element).on('click', throttled);\n *\n * // Cancel the trailing throttled invocation.\n * jQuery(window).on('popstate', throttled.cancel);\n */\nfunction throttle(func, wait, options) {\n var leading = true,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n if (isObject(options)) {\n leading = 'leading' in options ? !!options.leading : leading;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n return debounce(func, wait, {\n 'leading': leading,\n 'maxWait': wait,\n 'trailing': trailing\n });\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && objectToString.call(value) == symbolTag);\n}\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = value.replace(reTrim, '');\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = throttle;\n","\"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 _scrollLink = require('../mixins/scroll-link');\n\nvar _scrollLink2 = _interopRequireDefault(_scrollLink);\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 ButtonElement = function (_React$Component) {\n _inherits(ButtonElement, _React$Component);\n\n function ButtonElement() {\n _classCallCheck(this, ButtonElement);\n\n return _possibleConstructorReturn(this, (ButtonElement.__proto__ || Object.getPrototypeOf(ButtonElement)).apply(this, arguments));\n }\n\n _createClass(ButtonElement, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'input',\n this.props,\n this.props.children\n );\n }\n }]);\n\n return ButtonElement;\n}(_react2.default.Component);\n\n;\n\nexports.default = (0, _scrollLink2.default)(ButtonElement);","\"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 _scrollElement = require('../mixins/scroll-element');\n\nvar _scrollElement2 = _interopRequireDefault(_scrollElement);\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 ElementWrapper = function (_React$Component) {\n _inherits(ElementWrapper, _React$Component);\n\n function ElementWrapper() {\n _classCallCheck(this, ElementWrapper);\n\n return _possibleConstructorReturn(this, (ElementWrapper.__proto__ || Object.getPrototypeOf(ElementWrapper)).apply(this, arguments));\n }\n\n _createClass(ElementWrapper, [{\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n // Remove `parentBindings` from props\n var newProps = _extends({}, this.props);\n if (newProps.parentBindings) {\n delete newProps.parentBindings;\n }\n\n return _react2.default.createElement(\n 'div',\n _extends({}, newProps, { ref: function ref(el) {\n _this2.props.parentBindings.domNode = el;\n } }),\n this.props.children\n );\n }\n }]);\n\n return ElementWrapper;\n}(_react2.default.Component);\n\n;\n\nElementWrapper.propTypes = {\n name: _propTypes2.default.string,\n id: _propTypes2.default.string\n};\n\nexports.default = (0, _scrollElement2.default)(ElementWrapper);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _scrollLink = require('../mixins/scroll-link');\n\nvar _scrollLink2 = _interopRequireDefault(_scrollLink);\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 LinkElement = function (_React$Component) {\n _inherits(LinkElement, _React$Component);\n\n function LinkElement() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, LinkElement);\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 = LinkElement.__proto__ || Object.getPrototypeOf(LinkElement)).call.apply(_ref, [this].concat(args))), _this), _this.render = function () {\n return _react2.default.createElement(\n 'a',\n _this.props,\n _this.props.children\n );\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n return LinkElement;\n}(_react2.default.Component);\n\n;\n\nexports.default = (0, _scrollLink2.default)(LinkElement);","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Helpers = exports.ScrollElement = exports.ScrollLink = exports.animateScroll = exports.scrollSpy = exports.Events = exports.scroller = exports.Element = exports.Button = exports.Link = undefined;\n\nvar _Link = require('./components/Link.js');\n\nvar _Link2 = _interopRequireDefault(_Link);\n\nvar _Button = require('./components/Button.js');\n\nvar _Button2 = _interopRequireDefault(_Button);\n\nvar _Element = require('./components/Element.js');\n\nvar _Element2 = _interopRequireDefault(_Element);\n\nvar _scroller = require('./mixins/scroller.js');\n\nvar _scroller2 = _interopRequireDefault(_scroller);\n\nvar _scrollEvents = require('./mixins/scroll-events.js');\n\nvar _scrollEvents2 = _interopRequireDefault(_scrollEvents);\n\nvar _scrollSpy = require('./mixins/scroll-spy.js');\n\nvar _scrollSpy2 = _interopRequireDefault(_scrollSpy);\n\nvar _animateScroll = require('./mixins/animate-scroll.js');\n\nvar _animateScroll2 = _interopRequireDefault(_animateScroll);\n\nvar _scrollLink = require('./mixins/scroll-link.js');\n\nvar _scrollLink2 = _interopRequireDefault(_scrollLink);\n\nvar _scrollElement = require('./mixins/scroll-element.js');\n\nvar _scrollElement2 = _interopRequireDefault(_scrollElement);\n\nvar _Helpers = require('./mixins/Helpers.js');\n\nvar _Helpers2 = _interopRequireDefault(_Helpers);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.Link = _Link2.default;\nexports.Button = _Button2.default;\nexports.Element = _Element2.default;\nexports.scroller = _scroller2.default;\nexports.Events = _scrollEvents2.default;\nexports.scrollSpy = _scrollSpy2.default;\nexports.animateScroll = _animateScroll2.default;\nexports.ScrollLink = _scrollLink2.default;\nexports.ScrollElement = _scrollElement2.default;\nexports.Helpers = _Helpers2.default;\nexports.default = { Link: _Link2.default, Button: _Button2.default, Element: _Element2.default, scroller: _scroller2.default, Events: _scrollEvents2.default, scrollSpy: _scrollSpy2.default, animateScroll: _animateScroll2.default, ScrollLink: _scrollLink2.default, ScrollElement: _scrollElement2.default, Helpers: _Helpers2.default };","\"use strict\";\n\n/* DEPRECATED */\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\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 React = require('react');\nvar ReactDOM = require('react-dom');\n\nvar utils = require('./utils');\nvar scrollSpy = require('./scroll-spy');\nvar defaultScroller = require('./scroller');\nvar PropTypes = require('prop-types');\nvar scrollHash = require('./scroll-hash');\n\nvar protoTypes = {\n to: PropTypes.string.isRequired,\n containerId: PropTypes.string,\n container: PropTypes.object,\n activeClass: PropTypes.string,\n spy: PropTypes.bool,\n smooth: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]),\n offset: PropTypes.number,\n delay: PropTypes.number,\n isDynamic: PropTypes.bool,\n onClick: PropTypes.func,\n duration: PropTypes.oneOfType([PropTypes.number, PropTypes.func]),\n absolute: PropTypes.bool,\n onSetActive: PropTypes.func,\n onSetInactive: PropTypes.func,\n ignoreCancelEvents: PropTypes.bool,\n hashSpy: PropTypes.bool,\n spyThrottle: PropTypes.number\n};\n\nvar Helpers = {\n Scroll: function Scroll(Component, customScroller) {\n\n console.warn(\"Helpers.Scroll is deprecated since v1.7.0\");\n\n var scroller = customScroller || defaultScroller;\n\n var Scroll = function (_React$Component) {\n _inherits(Scroll, _React$Component);\n\n function Scroll(props) {\n _classCallCheck(this, Scroll);\n\n var _this = _possibleConstructorReturn(this, (Scroll.__proto__ || Object.getPrototypeOf(Scroll)).call(this, props));\n\n _initialiseProps.call(_this);\n\n _this.state = {\n active: false\n };\n return _this;\n }\n\n _createClass(Scroll, [{\n key: 'getScrollSpyContainer',\n value: function getScrollSpyContainer() {\n var containerId = this.props.containerId;\n var container = this.props.container;\n\n if (containerId) {\n return document.getElementById(containerId);\n }\n\n if (container && container.nodeType) {\n return container;\n }\n\n return document;\n }\n }, {\n key: 'componentDidMount',\n value: function componentDidMount() {\n if (this.props.spy || this.props.hashSpy) {\n var scrollSpyContainer = this.getScrollSpyContainer();\n\n if (!scrollSpy.isMounted(scrollSpyContainer)) {\n scrollSpy.mount(scrollSpyContainer, this.props.spyThrottle);\n }\n\n if (this.props.hashSpy) {\n if (!scrollHash.isMounted()) {\n scrollHash.mount(scroller);\n }\n scrollHash.mapContainer(this.props.to, scrollSpyContainer);\n }\n\n if (this.props.spy) {\n scrollSpy.addStateHandler(this.stateHandler);\n }\n\n scrollSpy.addSpyHandler(this.spyHandler, scrollSpyContainer);\n\n this.setState({\n container: scrollSpyContainer\n });\n }\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n scrollSpy.unmount(this.stateHandler, this.spyHandler);\n }\n }, {\n key: 'render',\n value: function render() {\n var className = \"\";\n\n if (this.state && this.state.active) {\n className = ((this.props.className || \"\") + \" \" + (this.props.activeClass || \"active\")).trim();\n } else {\n className = this.props.className;\n }\n\n var props = _extends({}, this.props);\n\n for (var prop in protoTypes) {\n if (props.hasOwnProperty(prop)) {\n delete props[prop];\n }\n }\n\n props.className = className;\n props.onClick = this.handleClick;\n\n return React.createElement(Component, props);\n }\n }]);\n\n return Scroll;\n }(React.Component);\n\n var _initialiseProps = function _initialiseProps() {\n var _this2 = this;\n\n this.scrollTo = function (to, props) {\n scroller.scrollTo(to, _extends({}, _this2.state, props));\n };\n\n this.handleClick = function (event) {\n\n /*\r\n * give the posibility to override onClick\r\n */\n\n if (_this2.props.onClick) {\n _this2.props.onClick(event);\n }\n\n /*\r\n * dont bubble the navigation\r\n */\n\n if (event.stopPropagation) event.stopPropagation();\n if (event.preventDefault) event.preventDefault();\n\n /*\r\n * do the magic!\r\n */\n _this2.scrollTo(_this2.props.to, _this2.props);\n };\n\n this.stateHandler = function () {\n if (scroller.getActiveLink() !== _this2.props.to) {\n if (_this2.state !== null && _this2.state.active && _this2.props.onSetInactive) {\n _this2.props.onSetInactive();\n }\n _this2.setState({ active: false });\n }\n };\n\n this.spyHandler = function (y) {\n\n var scrollSpyContainer = _this2.getScrollSpyContainer();\n\n if (scrollHash.isMounted() && !scrollHash.isInitialized()) {\n return;\n }\n\n var to = _this2.props.to;\n var element = null;\n var elemTopBound = 0;\n var elemBottomBound = 0;\n var containerTop = 0;\n\n if (scrollSpyContainer.getBoundingClientRect) {\n var containerCords = scrollSpyContainer.getBoundingClientRect();\n containerTop = containerCords.top;\n }\n\n if (!element || _this2.props.isDynamic) {\n element = scroller.get(to);\n if (!element) {\n return;\n }\n\n var cords = element.getBoundingClientRect();\n elemTopBound = cords.top - containerTop + y;\n elemBottomBound = elemTopBound + cords.height;\n }\n\n var offsetY = y - _this2.props.offset;\n var isInside = offsetY >= Math.floor(elemTopBound) && offsetY < Math.floor(elemBottomBound);\n var isOutside = offsetY < Math.floor(elemTopBound) || offsetY >= Math.floor(elemBottomBound);\n var activeLink = scroller.getActiveLink();\n\n if (isOutside) {\n if (to === activeLink) {\n scroller.setActiveLink(void 0);\n }\n\n if (_this2.props.hashSpy && scrollHash.getHash() === to) {\n scrollHash.changeHash();\n }\n\n if (_this2.props.spy && _this2.state.active) {\n _this2.setState({ active: false });\n _this2.props.onSetInactive && _this2.props.onSetInactive();\n }\n\n return scrollSpy.updateStates();\n }\n\n if (isInside && activeLink !== to) {\n scroller.setActiveLink(to);\n\n _this2.props.hashSpy && scrollHash.changeHash(to);\n\n if (_this2.props.spy) {\n _this2.setState({ active: true });\n _this2.props.onSetActive && _this2.props.onSetActive(to);\n }\n return scrollSpy.updateStates();\n }\n };\n };\n\n ;\n\n Scroll.propTypes = protoTypes;\n\n Scroll.defaultProps = { offset: 0 };\n\n return Scroll;\n },\n Element: function Element(Component) {\n\n console.warn(\"Helpers.Element is deprecated since v1.7.0\");\n\n var Element = function (_React$Component2) {\n _inherits(Element, _React$Component2);\n\n function Element(props) {\n _classCallCheck(this, Element);\n\n var _this3 = _possibleConstructorReturn(this, (Element.__proto__ || Object.getPrototypeOf(Element)).call(this, props));\n\n _this3.childBindings = {\n domNode: null\n };\n return _this3;\n }\n\n _createClass(Element, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n if (typeof window === 'undefined') {\n return false;\n }\n this.registerElems(this.props.name);\n }\n }, {\n key: 'componentDidUpdate',\n value: function componentDidUpdate(prevProps) {\n if (this.props.name !== prevProps.name) {\n this.registerElems(this.props.name);\n }\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n if (typeof window === 'undefined') {\n return false;\n }\n defaultScroller.unregister(this.props.name);\n }\n }, {\n key: 'registerElems',\n value: function registerElems(name) {\n defaultScroller.register(name, this.childBindings.domNode);\n }\n }, {\n key: 'render',\n value: function render() {\n return React.createElement(Component, _extends({}, this.props, { parentBindings: this.childBindings }));\n }\n }]);\n\n return Element;\n }(React.Component);\n\n ;\n\n Element.propTypes = {\n name: PropTypes.string,\n id: PropTypes.string\n };\n\n return Element;\n }\n};\n\nmodule.exports = Helpers;","'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 _utils = require('./utils');\n\nvar _utils2 = _interopRequireDefault(_utils);\n\nvar _smooth = require('./smooth');\n\nvar _smooth2 = _interopRequireDefault(_smooth);\n\nvar _cancelEvents = require('./cancel-events');\n\nvar _cancelEvents2 = _interopRequireDefault(_cancelEvents);\n\nvar _scrollEvents = require('./scroll-events');\n\nvar _scrollEvents2 = _interopRequireDefault(_scrollEvents);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/*\r\n * Gets the easing type from the smooth prop within options.\r\n */\nvar getAnimationType = function getAnimationType(options) {\n return _smooth2.default[options.smooth] || _smooth2.default.defaultEasing;\n};\n/*\r\n * Function helper\r\n */\nvar functionWrapper = function functionWrapper(value) {\n return typeof value === 'function' ? value : function () {\n return value;\n };\n};\n/*\r\n * Wraps window properties to allow server side rendering\r\n */\nvar currentWindowProperties = function currentWindowProperties() {\n if (typeof window !== 'undefined') {\n return window.requestAnimationFrame || window.webkitRequestAnimationFrame;\n }\n};\n\n/*\r\n * Helper function to never extend 60fps on the webpage.\r\n */\nvar requestAnimationFrameHelper = function () {\n return currentWindowProperties() || function (callback, element, delay) {\n window.setTimeout(callback, delay || 1000 / 60, new Date().getTime());\n };\n}();\n\nvar makeData = function makeData() {\n return {\n currentPosition: 0,\n startPosition: 0,\n targetPosition: 0,\n progress: 0,\n duration: 0,\n cancel: false,\n\n target: null,\n containerElement: null,\n to: null,\n start: null,\n delta: null,\n percent: null,\n delayTimeout: null\n };\n};\n\nvar currentPositionX = function currentPositionX(options) {\n var containerElement = options.data.containerElement;\n if (containerElement && containerElement !== document && containerElement !== document.body) {\n return containerElement.scrollLeft;\n } else {\n var supportPageOffset = window.pageXOffset !== undefined;\n var isCSS1Compat = (document.compatMode || \"\") === \"CSS1Compat\";\n return supportPageOffset ? window.pageXOffset : isCSS1Compat ? document.documentElement.scrollLeft : document.body.scrollLeft;\n }\n};\n\nvar currentPositionY = function currentPositionY(options) {\n var containerElement = options.data.containerElement;\n if (containerElement && containerElement !== document && containerElement !== document.body) {\n return containerElement.scrollTop;\n } else {\n var supportPageOffset = window.pageXOffset !== undefined;\n var isCSS1Compat = (document.compatMode || \"\") === \"CSS1Compat\";\n return supportPageOffset ? window.pageYOffset : isCSS1Compat ? document.documentElement.scrollTop : document.body.scrollTop;\n }\n};\n\nvar scrollContainerWidth = function scrollContainerWidth(options) {\n var containerElement = options.data.containerElement;\n if (containerElement && containerElement !== document && containerElement !== document.body) {\n return containerElement.scrollWidth - containerElement.offsetWidth;\n } else {\n var body = document.body;\n var html = document.documentElement;\n\n return Math.max(body.scrollWidth, body.offsetWidth, html.clientWidth, html.scrollWidth, html.offsetWidth);\n }\n};\n\nvar scrollContainerHeight = function scrollContainerHeight(options) {\n var containerElement = options.data.containerElement;\n if (containerElement && containerElement !== document && containerElement !== document.body) {\n return containerElement.scrollHeight - containerElement.offsetHeight;\n } else {\n var body = document.body;\n var html = document.documentElement;\n\n return Math.max(body.scrollHeight, body.offsetHeight, html.clientHeight, html.scrollHeight, html.offsetHeight);\n }\n};\n\nvar animateScroll = function animateScroll(easing, options, timestamp) {\n var data = options.data;\n\n // Cancel on specific events\n if (!options.ignoreCancelEvents && data.cancel) {\n if (_scrollEvents2.default.registered['end']) {\n _scrollEvents2.default.registered['end'](data.to, data.target, data.currentPositionY);\n }\n return;\n };\n\n data.delta = Math.round(data.targetPosition - data.startPosition);\n\n if (data.start === null) {\n data.start = timestamp;\n }\n\n data.progress = timestamp - data.start;\n\n data.percent = data.progress >= data.duration ? 1 : easing(data.progress / data.duration);\n\n data.currentPosition = data.startPosition + Math.ceil(data.delta * data.percent);\n\n if (data.containerElement && data.containerElement !== document && data.containerElement !== document.body) {\n if (options.horizontal) {\n data.containerElement.scrollLeft = data.currentPosition;\n } else {\n data.containerElement.scrollTop = data.currentPosition;\n }\n } else {\n if (options.horizontal) {\n window.scrollTo(data.currentPosition, 0);\n } else {\n window.scrollTo(0, data.currentPosition);\n }\n }\n\n if (data.percent < 1) {\n var easedAnimate = animateScroll.bind(null, easing, options);\n requestAnimationFrameHelper.call(window, easedAnimate);\n return;\n }\n\n if (_scrollEvents2.default.registered['end']) {\n _scrollEvents2.default.registered['end'](data.to, data.target, data.currentPosition);\n }\n};\n\nvar setContainer = function setContainer(options) {\n options.data.containerElement = !options ? null : options.containerId ? document.getElementById(options.containerId) : options.container && options.container.nodeType ? options.container : document;\n};\n\nvar animateTopScroll = function animateTopScroll(scrollOffset, options, to, target) {\n options.data = options.data || makeData();\n\n window.clearTimeout(options.data.delayTimeout);\n\n _cancelEvents2.default.subscribe(function () {\n options.data.cancel = true;\n });\n\n setContainer(options);\n\n options.data.start = null;\n options.data.cancel = false;\n options.data.startPosition = options.horizontal ? currentPositionX(options) : currentPositionY(options);\n options.data.targetPosition = options.absolute ? scrollOffset : scrollOffset + options.data.startPosition;\n\n if (options.data.startPosition === options.data.targetPosition) {\n if (_scrollEvents2.default.registered['end']) {\n _scrollEvents2.default.registered['end'](options.data.to, options.data.target, options.data.currentPosition);\n }\n return;\n }\n\n options.data.delta = Math.round(options.data.targetPosition - options.data.startPosition);\n\n options.data.duration = functionWrapper(options.duration)(options.data.delta);\n options.data.duration = isNaN(parseFloat(options.data.duration)) ? 1000 : parseFloat(options.data.duration);\n options.data.to = to;\n options.data.target = target;\n\n var easing = getAnimationType(options);\n var easedAnimate = animateScroll.bind(null, easing, options);\n\n if (options && options.delay > 0) {\n options.data.delayTimeout = window.setTimeout(function () {\n if (_scrollEvents2.default.registered['begin']) {\n _scrollEvents2.default.registered['begin'](options.data.to, options.data.target);\n }\n requestAnimationFrameHelper.call(window, easedAnimate);\n }, options.delay);\n return;\n }\n\n if (_scrollEvents2.default.registered['begin']) {\n _scrollEvents2.default.registered['begin'](options.data.to, options.data.target);\n }\n requestAnimationFrameHelper.call(window, easedAnimate);\n};\n\nvar proceedOptions = function proceedOptions(options) {\n options = _extends({}, options);\n options.data = options.data || makeData();\n options.absolute = true;\n return options;\n};\n\nvar scrollToTop = function scrollToTop(options) {\n animateTopScroll(0, proceedOptions(options));\n};\n\nvar scrollTo = function scrollTo(toPosition, options) {\n animateTopScroll(toPosition, proceedOptions(options));\n};\n\nvar scrollToBottom = function scrollToBottom(options) {\n options = proceedOptions(options);\n setContainer(options);\n animateTopScroll(options.horizontal ? scrollContainerWidth(options) : scrollContainerHeight(options), options);\n};\n\nvar scrollMore = function scrollMore(toPosition, options) {\n options = proceedOptions(options);\n setContainer(options);\n var currentPosition = options.horizontal ? currentPositionX(options) : currentPositionY(options);\n animateTopScroll(toPosition + currentPosition, options);\n};\n\nexports.default = {\n animateTopScroll: animateTopScroll,\n getAnimationType: getAnimationType,\n scrollToTop: scrollToTop,\n scrollToBottom: scrollToBottom,\n scrollTo: scrollTo,\n scrollMore: scrollMore\n};","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _passiveEventListeners = require('./passive-event-listeners');\n\nvar events = ['mousedown', 'mousewheel', 'touchmove', 'keydown'];\n\nexports.default = {\n subscribe: function subscribe(cancelEvent) {\n return typeof document !== 'undefined' && events.forEach(function (event) {\n return (0, _passiveEventListeners.addPassiveEventListener)(document, event, cancelEvent);\n });\n }\n};","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n/*\r\n * Tell the browser that the event listener won't prevent a scroll.\r\n * Allowing the browser to continue scrolling without having to\r\n * to wait for the listener to return.\r\n */\nvar addPassiveEventListener = exports.addPassiveEventListener = function addPassiveEventListener(target, eventName, listener) {\n var supportsPassiveOption = function () {\n var supportsPassiveOption = false;\n try {\n var opts = Object.defineProperty({}, 'passive', {\n get: function get() {\n supportsPassiveOption = true;\n }\n });\n window.addEventListener('test', null, opts);\n } catch (e) {}\n return supportsPassiveOption;\n }();\n target.addEventListener(eventName, listener, supportsPassiveOption ? { passive: true } : false);\n};\n\nvar removePassiveEventListener = exports.removePassiveEventListener = function removePassiveEventListener(target, eventName, listener) {\n target.removeEventListener(eventName, listener);\n};","'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 _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _scroller = require('./scroller');\n\nvar _scroller2 = _interopRequireDefault(_scroller);\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\nexports.default = function (Component) {\n var Element = function (_React$Component) {\n _inherits(Element, _React$Component);\n\n function Element(props) {\n _classCallCheck(this, Element);\n\n var _this = _possibleConstructorReturn(this, (Element.__proto__ || Object.getPrototypeOf(Element)).call(this, props));\n\n _this.childBindings = {\n domNode: null\n };\n return _this;\n }\n\n _createClass(Element, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n if (typeof window === 'undefined') {\n return false;\n }\n this.registerElems(this.props.name);\n }\n }, {\n key: 'componentDidUpdate',\n value: function componentDidUpdate(prevProps) {\n if (this.props.name !== prevProps.name) {\n this.registerElems(this.props.name);\n }\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n if (typeof window === 'undefined') {\n return false;\n }\n _scroller2.default.unregister(this.props.name);\n }\n }, {\n key: 'registerElems',\n value: function registerElems(name) {\n _scroller2.default.register(name, this.childBindings.domNode);\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(Component, _extends({}, this.props, { parentBindings: this.childBindings }));\n }\n }]);\n\n return Element;\n }(_react2.default.Component);\n\n ;\n\n Element.propTypes = {\n name: _propTypes2.default.string,\n id: _propTypes2.default.string\n };\n\n return Element;\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar Events = {\n\tregistered: {},\n\tscrollEvent: {\n\t\tregister: function register(evtName, callback) {\n\t\t\tEvents.registered[evtName] = callback;\n\t\t},\n\t\tremove: function remove(evtName) {\n\t\t\tEvents.registered[evtName] = null;\n\t\t}\n\t}\n};\n\nexports.default = Events;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _passiveEventListeners = require('./passive-event-listeners');\n\nvar _utils = require('./utils');\n\nvar _utils2 = _interopRequireDefault(_utils);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar scrollHash = {\n mountFlag: false,\n initialized: false,\n scroller: null,\n containers: {},\n\n mount: function mount(scroller) {\n this.scroller = scroller;\n\n this.handleHashChange = this.handleHashChange.bind(this);\n window.addEventListener('hashchange', this.handleHashChange);\n\n this.initStateFromHash();\n this.mountFlag = true;\n },\n mapContainer: function mapContainer(to, container) {\n this.containers[to] = container;\n },\n isMounted: function isMounted() {\n return this.mountFlag;\n },\n isInitialized: function isInitialized() {\n return this.initialized;\n },\n initStateFromHash: function initStateFromHash() {\n var _this = this;\n\n var hash = this.getHash();\n if (hash) {\n window.setTimeout(function () {\n _this.scrollTo(hash, true);\n _this.initialized = true;\n }, 10);\n } else {\n this.initialized = true;\n }\n },\n scrollTo: function scrollTo(to, isInit) {\n var scroller = this.scroller;\n var element = scroller.get(to);\n if (element && (isInit || to !== scroller.getActiveLink())) {\n var container = this.containers[to] || document;\n scroller.scrollTo(to, { container: container });\n }\n },\n getHash: function getHash() {\n return _utils2.default.getHash();\n },\n changeHash: function changeHash(to, saveHashHistory) {\n if (this.isInitialized() && _utils2.default.getHash() !== to) {\n _utils2.default.updateHash(to, saveHashHistory);\n }\n },\n handleHashChange: function handleHashChange() {\n this.scrollTo(this.getHash());\n },\n unmount: function unmount() {\n this.scroller = null;\n this.containers = null;\n window.removeEventListener('hashchange', this.handleHashChange);\n }\n};\n\nexports.default = scrollHash;","'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 _scrollSpy = require('./scroll-spy');\n\nvar _scrollSpy2 = _interopRequireDefault(_scrollSpy);\n\nvar _scroller = require('./scroller');\n\nvar _scroller2 = _interopRequireDefault(_scroller);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _scrollHash = require('./scroll-hash');\n\nvar _scrollHash2 = _interopRequireDefault(_scrollHash);\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 protoTypes = {\n to: _propTypes2.default.string.isRequired,\n containerId: _propTypes2.default.string,\n container: _propTypes2.default.object,\n activeClass: _propTypes2.default.string,\n spy: _propTypes2.default.bool,\n horizontal: _propTypes2.default.bool,\n smooth: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.string]),\n offset: _propTypes2.default.number,\n delay: _propTypes2.default.number,\n isDynamic: _propTypes2.default.bool,\n onClick: _propTypes2.default.func,\n duration: _propTypes2.default.oneOfType([_propTypes2.default.number, _propTypes2.default.func]),\n absolute: _propTypes2.default.bool,\n onSetActive: _propTypes2.default.func,\n onSetInactive: _propTypes2.default.func,\n ignoreCancelEvents: _propTypes2.default.bool,\n hashSpy: _propTypes2.default.bool,\n saveHashHistory: _propTypes2.default.bool,\n spyThrottle: _propTypes2.default.number\n};\n\nexports.default = function (Component, customScroller) {\n\n var scroller = customScroller || _scroller2.default;\n\n var Link = function (_React$PureComponent) {\n _inherits(Link, _React$PureComponent);\n\n function Link(props) {\n _classCallCheck(this, Link);\n\n var _this = _possibleConstructorReturn(this, (Link.__proto__ || Object.getPrototypeOf(Link)).call(this, props));\n\n _initialiseProps.call(_this);\n\n _this.state = {\n active: false\n };\n return _this;\n }\n\n _createClass(Link, [{\n key: 'getScrollSpyContainer',\n value: function getScrollSpyContainer() {\n var containerId = this.props.containerId;\n var container = this.props.container;\n\n if (containerId && !container) {\n return document.getElementById(containerId);\n }\n\n if (container && container.nodeType) {\n return container;\n }\n\n return document;\n }\n }, {\n key: 'componentDidMount',\n value: function componentDidMount() {\n if (this.props.spy || this.props.hashSpy) {\n var scrollSpyContainer = this.getScrollSpyContainer();\n\n if (!_scrollSpy2.default.isMounted(scrollSpyContainer)) {\n _scrollSpy2.default.mount(scrollSpyContainer, this.props.spyThrottle);\n }\n\n if (this.props.hashSpy) {\n if (!_scrollHash2.default.isMounted()) {\n _scrollHash2.default.mount(scroller);\n }\n _scrollHash2.default.mapContainer(this.props.to, scrollSpyContainer);\n }\n\n _scrollSpy2.default.addSpyHandler(this.spyHandler, scrollSpyContainer);\n\n this.setState({\n container: scrollSpyContainer\n });\n }\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n _scrollSpy2.default.unmount(this.stateHandler, this.spyHandler);\n }\n }, {\n key: 'render',\n value: function render() {\n var className = \"\";\n\n if (this.state && this.state.active) {\n className = ((this.props.className || \"\") + \" \" + (this.props.activeClass || \"active\")).trim();\n } else {\n className = this.props.className;\n }\n\n var props = _extends({}, this.props);\n\n for (var prop in protoTypes) {\n if (props.hasOwnProperty(prop)) {\n delete props[prop];\n }\n }\n\n props.className = className;\n props.onClick = this.handleClick;\n\n return _react2.default.createElement(Component, props);\n }\n }]);\n\n return Link;\n }(_react2.default.PureComponent);\n\n var _initialiseProps = function _initialiseProps() {\n var _this2 = this;\n\n this.scrollTo = function (to, props) {\n scroller.scrollTo(to, _extends({}, _this2.state, props));\n };\n\n this.handleClick = function (event) {\n\n /*\r\n * give the posibility to override onClick\r\n */\n\n if (_this2.props.onClick) {\n _this2.props.onClick(event);\n }\n\n /*\r\n * dont bubble the navigation\r\n */\n\n if (event.stopPropagation) event.stopPropagation();\n if (event.preventDefault) event.preventDefault();\n\n /*\r\n * do the magic!\r\n */\n _this2.scrollTo(_this2.props.to, _this2.props);\n };\n\n this.spyHandler = function (x, y) {\n var scrollSpyContainer = _this2.getScrollSpyContainer();\n\n if (_scrollHash2.default.isMounted() && !_scrollHash2.default.isInitialized()) {\n return;\n }\n\n var horizontal = _this2.props.horizontal;\n\n var to = _this2.props.to;\n var element = null;\n var isInside = void 0;\n var isOutside = void 0;\n\n if (horizontal) {\n var elemLeftBound = 0;\n var elemRightBound = 0;\n var containerLeft = 0;\n\n if (scrollSpyContainer.getBoundingClientRect) {\n var containerCords = scrollSpyContainer.getBoundingClientRect();\n containerLeft = containerCords.left;\n }\n\n if (!element || _this2.props.isDynamic) {\n element = scroller.get(to);\n if (!element) {\n return;\n }\n\n var cords = element.getBoundingClientRect();\n elemLeftBound = cords.left - containerLeft + x;\n elemRightBound = elemLeftBound + cords.width;\n }\n\n var offsetX = x - _this2.props.offset;\n isInside = offsetX >= Math.floor(elemLeftBound) && offsetX < Math.floor(elemRightBound);\n isOutside = offsetX < Math.floor(elemLeftBound) || offsetX >= Math.floor(elemRightBound);\n } else {\n var elemTopBound = 0;\n var elemBottomBound = 0;\n var containerTop = 0;\n\n if (scrollSpyContainer.getBoundingClientRect) {\n var _containerCords = scrollSpyContainer.getBoundingClientRect();\n containerTop = _containerCords.top;\n }\n\n if (!element || _this2.props.isDynamic) {\n element = scroller.get(to);\n if (!element) {\n return;\n }\n\n var _cords = element.getBoundingClientRect();\n elemTopBound = _cords.top - containerTop + y;\n elemBottomBound = elemTopBound + _cords.height;\n }\n\n var offsetY = y - _this2.props.offset;\n isInside = offsetY >= Math.floor(elemTopBound) && offsetY < Math.floor(elemBottomBound);\n isOutside = offsetY < Math.floor(elemTopBound) || offsetY >= Math.floor(elemBottomBound);\n }\n\n var activeLink = scroller.getActiveLink();\n\n if (isOutside) {\n if (to === activeLink) {\n scroller.setActiveLink(void 0);\n }\n\n if (_this2.props.hashSpy && _scrollHash2.default.getHash() === to) {\n var _props$saveHashHistor = _this2.props.saveHashHistory,\n saveHashHistory = _props$saveHashHistor === undefined ? false : _props$saveHashHistor;\n\n _scrollHash2.default.changeHash(\"\", saveHashHistory);\n }\n\n if (_this2.props.spy && _this2.state.active) {\n _this2.setState({ active: false });\n _this2.props.onSetInactive && _this2.props.onSetInactive(to, element);\n }\n }\n\n if (isInside && (activeLink !== to || _this2.state.active === false)) {\n scroller.setActiveLink(to);\n\n var _props$saveHashHistor2 = _this2.props.saveHashHistory,\n _saveHashHistory = _props$saveHashHistor2 === undefined ? false : _props$saveHashHistor2;\n\n _this2.props.hashSpy && _scrollHash2.default.changeHash(to, _saveHashHistory);\n\n if (_this2.props.spy) {\n _this2.setState({ active: true });\n _this2.props.onSetActive && _this2.props.onSetActive(to, element);\n }\n }\n };\n };\n\n ;\n\n Link.propTypes = protoTypes;\n\n Link.defaultProps = { offset: 0 };\n\n return Link;\n};","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _lodash = require('lodash.throttle');\n\nvar _lodash2 = _interopRequireDefault(_lodash);\n\nvar _passiveEventListeners = require('./passive-event-listeners');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// The eventHandler will execute at a rate of 15fps by default\nvar eventThrottler = function eventThrottler(eventHandler) {\n var throttleAmount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 66;\n return (0, _lodash2.default)(eventHandler, throttleAmount);\n};\n\nvar scrollSpy = {\n\n spyCallbacks: [],\n spySetState: [],\n scrollSpyContainers: [],\n\n mount: function mount(scrollSpyContainer, throttle) {\n if (scrollSpyContainer) {\n var eventHandler = eventThrottler(function (event) {\n scrollSpy.scrollHandler(scrollSpyContainer);\n }, throttle);\n scrollSpy.scrollSpyContainers.push(scrollSpyContainer);\n (0, _passiveEventListeners.addPassiveEventListener)(scrollSpyContainer, 'scroll', eventHandler);\n }\n },\n isMounted: function isMounted(scrollSpyContainer) {\n return scrollSpy.scrollSpyContainers.indexOf(scrollSpyContainer) !== -1;\n },\n currentPositionX: function currentPositionX(scrollSpyContainer) {\n if (scrollSpyContainer === document) {\n var supportPageOffset = window.pageYOffset !== undefined;\n var isCSS1Compat = (document.compatMode || \"\") === \"CSS1Compat\";\n return supportPageOffset ? window.pageXOffset : isCSS1Compat ? document.documentElement.scrollLeft : document.body.scrollLeft;\n } else {\n return scrollSpyContainer.scrollLeft;\n }\n },\n currentPositionY: function currentPositionY(scrollSpyContainer) {\n if (scrollSpyContainer === document) {\n var supportPageOffset = window.pageXOffset !== undefined;\n var isCSS1Compat = (document.compatMode || \"\") === \"CSS1Compat\";\n return supportPageOffset ? window.pageYOffset : isCSS1Compat ? document.documentElement.scrollTop : document.body.scrollTop;\n } else {\n return scrollSpyContainer.scrollTop;\n }\n },\n scrollHandler: function scrollHandler(scrollSpyContainer) {\n var callbacks = scrollSpy.scrollSpyContainers[scrollSpy.scrollSpyContainers.indexOf(scrollSpyContainer)].spyCallbacks || [];\n callbacks.forEach(function (c) {\n return c(scrollSpy.currentPositionX(scrollSpyContainer), scrollSpy.currentPositionY(scrollSpyContainer));\n });\n },\n addStateHandler: function addStateHandler(handler) {\n scrollSpy.spySetState.push(handler);\n },\n addSpyHandler: function addSpyHandler(handler, scrollSpyContainer) {\n var container = scrollSpy.scrollSpyContainers[scrollSpy.scrollSpyContainers.indexOf(scrollSpyContainer)];\n\n if (!container.spyCallbacks) {\n container.spyCallbacks = [];\n }\n\n container.spyCallbacks.push(handler);\n\n handler(scrollSpy.currentPositionX(scrollSpyContainer), scrollSpy.currentPositionY(scrollSpyContainer));\n },\n updateStates: function updateStates() {\n scrollSpy.spySetState.forEach(function (s) {\n return s();\n });\n },\n unmount: function unmount(stateHandler, spyHandler) {\n scrollSpy.scrollSpyContainers.forEach(function (c) {\n return c.spyCallbacks && c.spyCallbacks.length && c.spyCallbacks.splice(c.spyCallbacks.indexOf(spyHandler), 1);\n });\n\n if (scrollSpy.spySetState && scrollSpy.spySetState.length) {\n scrollSpy.spySetState.splice(scrollSpy.spySetState.indexOf(stateHandler), 1);\n }\n\n document.removeEventListener('scroll', scrollSpy.scrollHandler);\n },\n\n\n update: function update() {\n return scrollSpy.scrollSpyContainers.forEach(function (c) {\n return scrollSpy.scrollHandler(c);\n });\n }\n};\n\nexports.default = scrollSpy;","'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 _utils = require('./utils');\n\nvar _utils2 = _interopRequireDefault(_utils);\n\nvar _animateScroll = require('./animate-scroll');\n\nvar _animateScroll2 = _interopRequireDefault(_animateScroll);\n\nvar _scrollEvents = require('./scroll-events');\n\nvar _scrollEvents2 = _interopRequireDefault(_scrollEvents);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar __mapped = {};\nvar __activeLink = void 0;\n\nexports.default = {\n\n unmount: function unmount() {\n __mapped = {};\n },\n\n register: function register(name, element) {\n __mapped[name] = element;\n },\n\n unregister: function unregister(name) {\n delete __mapped[name];\n },\n\n get: function get(name) {\n return __mapped[name] || document.getElementById(name) || document.getElementsByName(name)[0] || document.getElementsByClassName(name)[0];\n },\n\n setActiveLink: function setActiveLink(link) {\n return __activeLink = link;\n },\n\n getActiveLink: function getActiveLink() {\n return __activeLink;\n },\n\n scrollTo: function scrollTo(to, props) {\n\n var target = this.get(to);\n\n if (!target) {\n console.warn(\"target Element not found\");\n return;\n }\n\n props = _extends({}, props, { absolute: false });\n\n var containerId = props.containerId;\n var container = props.container;\n\n var containerElement = void 0;\n if (containerId) {\n containerElement = document.getElementById(containerId);\n } else if (container && container.nodeType) {\n containerElement = container;\n } else {\n containerElement = document;\n }\n\n props.absolute = true;\n\n var horizontal = props.horizontal;\n var scrollOffset = _utils2.default.scrollOffset(containerElement, target, horizontal) + (props.offset || 0);\n\n /*\r\n * if animate is not provided just scroll into the view\r\n */\n if (!props.smooth) {\n if (_scrollEvents2.default.registered['begin']) {\n _scrollEvents2.default.registered['begin'](to, target);\n }\n\n if (containerElement === document) {\n if (props.horizontal) {\n window.scrollTo(scrollOffset, 0);\n } else {\n window.scrollTo(0, scrollOffset);\n }\n } else {\n containerElement.scrollTop = scrollOffset;\n }\n\n if (_scrollEvents2.default.registered['end']) {\n _scrollEvents2.default.registered['end'](to, target);\n }\n\n return;\n }\n\n /*\r\n * Animate scrolling\r\n */\n\n _animateScroll2.default.animateTopScroll(scrollOffset, props, to, target);\n }\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = {\n /*\r\n * https://github.com/oblador/angular-scroll (duScrollDefaultEasing)\r\n */\n defaultEasing: function defaultEasing(x) {\n if (x < 0.5) {\n return Math.pow(x * 2, 2) / 2;\n }\n return 1 - Math.pow((1 - x) * 2, 2) / 2;\n },\n /*\r\n * https://gist.github.com/gre/1650294\r\n */\n // no easing, no acceleration\n linear: function linear(x) {\n return x;\n },\n // accelerating from zero velocity\n easeInQuad: function easeInQuad(x) {\n return x * x;\n },\n // decelerating to zero velocity\n easeOutQuad: function easeOutQuad(x) {\n return x * (2 - x);\n },\n // acceleration until halfway, then deceleration\n easeInOutQuad: function easeInOutQuad(x) {\n return x < .5 ? 2 * x * x : -1 + (4 - 2 * x) * x;\n },\n // accelerating from zero velocity \n easeInCubic: function easeInCubic(x) {\n return x * x * x;\n },\n // decelerating to zero velocity π\n easeOutCubic: function easeOutCubic(x) {\n return --x * x * x + 1;\n },\n // acceleration until halfway, then deceleration \n easeInOutCubic: function easeInOutCubic(x) {\n return x < .5 ? 4 * x * x * x : (x - 1) * (2 * x - 2) * (2 * x - 2) + 1;\n },\n // accelerating from zero velocity \n easeInQuart: function easeInQuart(x) {\n return x * x * x * x;\n },\n // decelerating to zero velocity \n easeOutQuart: function easeOutQuart(x) {\n return 1 - --x * x * x * x;\n },\n // acceleration until halfway, then deceleration\n easeInOutQuart: function easeInOutQuart(x) {\n return x < .5 ? 8 * x * x * x * x : 1 - 8 * --x * x * x * x;\n },\n // accelerating from zero velocity\n easeInQuint: function easeInQuint(x) {\n return x * x * x * x * x;\n },\n // decelerating to zero velocity\n easeOutQuint: function easeOutQuint(x) {\n return 1 + --x * x * x * x * x;\n },\n // acceleration until halfway, then deceleration \n easeInOutQuint: function easeInOutQuint(x) {\n return x < .5 ? 16 * x * x * x * x * x : 1 + 16 * --x * x * x * x * x;\n }\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nvar updateHash = function updateHash(hash, historyUpdate) {\n var hashVal = hash.indexOf(\"#\") === 0 ? hash.substring(1) : hash;\n var hashToUpdate = hashVal ? \"#\" + hashVal : \"\";\n var curLoc = window && window.location;\n var urlToPush = hashToUpdate ? curLoc.pathname + curLoc.search + hashToUpdate : curLoc.pathname + curLoc.search;\n historyUpdate ? history.pushState(null, \"\", urlToPush) : history.replaceState(null, \"\", urlToPush);\n};\n\nvar getHash = function getHash() {\n return window.location.hash.replace(/^#/, \"\");\n};\n\nvar filterElementInContainer = function filterElementInContainer(container) {\n return function (element) {\n return container.contains ? container != element && container.contains(element) : !!(container.compareDocumentPosition(element) & 16);\n };\n};\n\nvar isPositioned = function isPositioned(element) {\n return getComputedStyle(element).position !== \"static\";\n};\n\nvar getElementOffsetInfoUntil = function getElementOffsetInfoUntil(element, predicate) {\n var offsetTop = element.offsetTop;\n var currentOffsetParent = element.offsetParent;\n\n while (currentOffsetParent && !predicate(currentOffsetParent)) {\n offsetTop += currentOffsetParent.offsetTop;\n currentOffsetParent = currentOffsetParent.offsetParent;\n }\n\n return { offsetTop: offsetTop, offsetParent: currentOffsetParent };\n};\n\nvar scrollOffset = function scrollOffset(c, t, horizontal) {\n if (horizontal) {\n return c === document ? t.getBoundingClientRect().left + (window.scrollX || window.pageXOffset) : getComputedStyle(c).position !== \"static\" ? t.offsetLeft : t.offsetLeft - c.offsetLeft;\n } else {\n if (c === document) {\n return t.getBoundingClientRect().top + (window.scrollY || window.pageYOffset);\n }\n\n // The offsetParent of an element, according to MDN, is its nearest positioned\n // (an element whose position is anything other than static) ancestor. The offsetTop\n // of an element is taken with respect to its offsetParent which may not neccessarily\n // be its parentElement except the parent itself is positioned.\n\n // So if containerElement is positioned, then it must be an offsetParent somewhere\n // If it happens that targetElement is a descendant of the containerElement, and there\n // is not intermediate positioned element between the two of them, i.e.\n // targetElement\"s offsetParent is the same as the containerElement, then the\n // distance between the two will be the offsetTop of the targetElement.\n // If, on the other hand, there are intermediate positioned elements between the\n // two entities, the distance between the targetElement and the containerElement\n // will be the accumulation of the offsetTop of the element and that of its\n // subsequent offsetParent until the containerElement is reached, since it\n // will also be an offsetParent at some point due to the fact that it is positioned.\n\n // If the containerElement is not positioned, then it can\"t be an offsetParent,\n // which means that the offsetTop of the targetElement would not be with respect to it.\n // However, if the two of them happen to have the same offsetParent, then\n // the distance between them will be the difference between their offsetTop\n // since they are both taken with respect to the same entity.\n // The last resort would be to accumulate their offsetTop until a common\n // offsetParent is reached (usually the document) and taking the difference\n // between the accumulated offsetTops\n\n if (isPositioned(c)) {\n if (t.offsetParent !== c) {\n var isContainerElementOrDocument = function isContainerElementOrDocument(e) {\n return e === c || e === document;\n };\n\n var _getElementOffsetInfo = getElementOffsetInfoUntil(t, isContainerElementOrDocument),\n offsetTop = _getElementOffsetInfo.offsetTop,\n offsetParent = _getElementOffsetInfo.offsetParent;\n\n if (offsetParent !== c) {\n throw new Error(\"Seems containerElement is not an ancestor of the Element\");\n }\n\n return offsetTop;\n }\n\n return t.offsetTop;\n }\n\n if (t.offsetParent === c.offsetParent) {\n return t.offsetTop - c.offsetTop;\n }\n\n var isDocument = function isDocument(e) {\n return e === document;\n };\n return getElementOffsetInfoUntil(t, isDocument).offsetTop - getElementOffsetInfoUntil(c, isDocument).offsetTop;\n }\n};\n\nexports.default = {\n updateHash: updateHash,\n getHash: getHash,\n filterElementInContainer: filterElementInContainer,\n scrollOffset: scrollOffset\n};"],"sourceRoot":""}