{"version":3,"file":"aca234947f664820946f1dc3fda748743949912c-8312a448f04a2e9d0e2f.js","mappings":"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","sources":["webpack://va-software-website/./node_modules/@typeform/embed-react/build/index.js","webpack://va-software-website/./node_modules/classnames/index.js","webpack://va-software-website/./node_modules/lodash.throttle/index.js","webpack://va-software-website/./node_modules/prop-types-extra/lib/all.js","webpack://va-software-website/./node_modules/prop-types-extra/lib/utils/createChainableTypeChecker.js","webpack://va-software-website/./node_modules/react-fast-compare/index.js","webpack://va-software-website/./node_modules/react-scroll/modules/components/Button.js","webpack://va-software-website/./node_modules/react-scroll/modules/components/Element.js","webpack://va-software-website/./node_modules/react-scroll/modules/components/Link.js","webpack://va-software-website/./node_modules/react-scroll/modules/index.js","webpack://va-software-website/./node_modules/react-scroll/modules/mixins/Helpers.js","webpack://va-software-website/./node_modules/react-scroll/modules/mixins/animate-scroll.js","webpack://va-software-website/./node_modules/react-scroll/modules/mixins/cancel-events.js","webpack://va-software-website/./node_modules/react-scroll/modules/mixins/passive-event-listeners.js","webpack://va-software-website/./node_modules/react-scroll/modules/mixins/scroll-element.js","webpack://va-software-website/./node_modules/react-scroll/modules/mixins/scroll-events.js","webpack://va-software-website/./node_modules/react-scroll/modules/mixins/scroll-hash.js","webpack://va-software-website/./node_modules/react-scroll/modules/mixins/scroll-link.js","webpack://va-software-website/./node_modules/react-scroll/modules/mixins/scroll-spy.js","webpack://va-software-website/./node_modules/react-scroll/modules/mixins/scroller.js","webpack://va-software-website/./node_modules/react-scroll/modules/mixins/smooth.js","webpack://va-software-website/./node_modules/react-scroll/modules/mixins/utils.js","webpack://va-software-website/./node_modules/react-side-effect/lib/index.js","webpack://va-software-website/./src/components/image.js","webpack://va-software-website/./node_modules/react-helmet/es/Helmet.js","webpack://va-software-website/./src/components/seo.js","webpack://va-software-website/./src/views/footer/footer.js","webpack://va-software-website/./node_modules/@babel/runtime/helpers/esm/extends.js","webpack://va-software-website/./node_modules/uncontrollable/lib/esm/utils.js","webpack://va-software-website/./node_modules/uncontrollable/lib/esm/hook.js","webpack://va-software-website/./node_modules/dom-helpers/esm/camelize.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/ThemeProvider.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/createWithBsPrefix.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/NavbarBrand.js","webpack://va-software-website/./node_modules/dom-helpers/esm/ownerWindow.js","webpack://va-software-website/./node_modules/dom-helpers/esm/ownerDocument.js","webpack://va-software-website/./node_modules/dom-helpers/esm/hyphenate.js","webpack://va-software-website/./node_modules/dom-helpers/esm/hyphenateStyle.js","webpack://va-software-website/./node_modules/dom-helpers/esm/isTransform.js","webpack://va-software-website/./node_modules/dom-helpers/esm/css.js","webpack://va-software-website/./node_modules/dom-helpers/esm/getComputedStyle.js","webpack://va-software-website/./node_modules/react-transition-group/esm/config.js","webpack://va-software-website/./node_modules/react-transition-group/esm/TransitionGroupContext.js","webpack://va-software-website/./node_modules/react-transition-group/esm/Transition.js","webpack://va-software-website/./node_modules/dom-helpers/esm/canUseDOM.js","webpack://va-software-website/./node_modules/dom-helpers/esm/addEventListener.js","webpack://va-software-website/./node_modules/dom-helpers/esm/removeEventListener.js","webpack://va-software-website/./node_modules/dom-helpers/esm/listen.js","webpack://va-software-website/./node_modules/dom-helpers/esm/transitionEnd.js","webpack://va-software-website/./node_modules/dom-helpers/esm/triggerEvent.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/transitionEndListener.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/createChainedFunction.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/Collapse.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/triggerBrowserReflow.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/NavbarContext.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/NavbarCollapse.js","webpack://va-software-website/./node_modules/@restart/hooks/esm/useCommittedRef.js","webpack://va-software-website/./node_modules/@restart/hooks/esm/useEventCallback.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/NavbarToggle.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/SelectableContext.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/Navbar.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/Container.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/CardContext.js","webpack://va-software-website/./node_modules/dom-helpers/esm/querySelectorAll.js","webpack://va-software-website/./node_modules/@restart/hooks/esm/useMergedRefs.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/NavContext.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/TabContext.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/AbstractNav.js","webpack://va-software-website/./node_modules/@restart/hooks/esm/useForceUpdate.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/NavItem.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/SafeAnchor.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/AbstractNavItem.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/NavLink.js","webpack://va-software-website/./node_modules/react-bootstrap/esm/Nav.js","webpack://va-software-website/./node_modules/clsx/dist/clsx.m.js","webpack://va-software-website/./node_modules/throttle-debounce/esm/index.js","webpack://va-software-website/./src/hooks/useWindowOnScroll.jsx","webpack://va-software-website/./src/hooks/useSmoothScrollTo.jsx","webpack://va-software-website/./src/components/navitem.js","webpack://va-software-website/./src/views/navbar/navbar.js","webpack://va-software-website/./src/views/sections/about/about.js","webpack://va-software-website/./src/views/sections/contact/contact.js","webpack://va-software-website/./node_modules/warning/warning.js","webpack://va-software-website/./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js"],"sourcesContent":["!function (e, t) {\n \"object\" == typeof exports && \"object\" == typeof module ? module.exports = t(require(\"react\")) : \"function\" == typeof define && define.amd ? define([\"react\"], t) : \"object\" == typeof exports ? exports[\"embed-react\"] = t(require(\"react\")) : e[\"embed-react\"] = t(e.react);\n}(this, function (e) {\n return function () {\n var t = {\n 378: function _(e) {\n \"use strict\";\n\n e.exports = function e(t, n) {\n if (t === n) return !0;\n\n if (t && n && \"object\" == typeof t && \"object\" == typeof n) {\n if (t.constructor !== n.constructor) return !1;\n var o, i, r;\n\n if (Array.isArray(t)) {\n if ((o = t.length) != n.length) return !1;\n\n for (i = o; 0 != i--;) {\n if (!e(t[i], n[i])) return !1;\n }\n\n return !0;\n }\n\n if (t.constructor === RegExp) return t.source === n.source && t.flags === n.flags;\n if (t.valueOf !== Object.prototype.valueOf) return t.valueOf() === n.valueOf();\n if (t.toString !== Object.prototype.toString) return t.toString() === n.toString();\n if ((o = (r = Object.keys(t)).length) !== Object.keys(n).length) return !1;\n\n for (i = o; 0 != i--;) {\n if (!Object.prototype.hasOwnProperty.call(n, r[i])) return !1;\n }\n\n for (i = o; 0 != i--;) {\n var a = r[i];\n if (!e(t[a], n[a])) return !1;\n }\n\n return !0;\n }\n\n return t != t && n != n;\n };\n },\n 145: function _(e, t, n) {\n \"use strict\";\n\n n.r(t), t.default = \"@keyframes spin{to{transform:rotate(360deg)}}.tf-v1-popover{bottom:96px;position:fixed;right:16px;z-index:10001}.tf-v1-popover.open{max-width:100%;min-height:360px;min-width:360px}.tf-v1-popover-wrapper{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);height:100%;width:100%;opacity:0;transition:opacity 0.25s ease-in-out;border-radius:4px;box-shadow:rgba(0,0,0,0.08) 0 2px 4px,rgba(0,0,0,0.06) 0 2px 12px}.tf-v1-popover-wrapper iframe{width:100%;height:100%;border:none;overflow:hidden;border-radius:8px}.tf-v1-popover-close{display:none}.tf-v1-popover-button{width:54px;height:54px;position:fixed;box-shadow:0 2px 12px rgba(0,0,0,0.06),0 2px 4px rgba(0,0,0,0.08);color:white;right:26px;bottom:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;background:#3a7685;line-height:0;border:none;padding:0}.tf-v1-popover-button-icon{width:54px;height:54px;font-size:24px;border-radius:50%;overflow:hidden;display:flex;justify-content:center;align-items:center}.tf-v1-popover-button-icon svg{margin-top:6px}.tf-v1-popover-button-icon svg,.tf-v1-popover-button-icon img{max-width:54px;max-height:54px}.tf-v1-popover-button-icon img{width:100%;height:100%;object-fit:cover;border-radius:50%}.tf-v1-popover-tooltip{position:fixed;right:94px;bottom:33px;max-width:240px;padding:10px 25px 10px 10px;border-radius:8px;background:#ffffff;box-shadow:0 2px 4px rgba(0,0,0,0.08),0 2px 12px rgba(0,0,0,0.06);font-size:14px;font-family:Helvetica, Arial, sans-serif;line-height:22px}.tf-v1-popover-tooltip::before{background-color:#ffffff;content:'';display:block;width:12px;height:12px;position:absolute;right:-4px;bottom:15px;transform:rotate(45deg);box-shadow:2px -2px 2px 0 rgba(0,0,0,0.06)}.tf-v1-popover-tooltip-text{overflow:hidden}.tf-v1-popover-tooltip-close{color:rgba(0,0,0,0.2);cursor:pointer;margin-left:4px;display:inline-block;width:20px;height:20px;font-size:18px;text-align:center;position:absolute;top:8px;right:6px}.tf-v1-popover-tooltip-close:hover{color:rgba(0,0,0,0.3)}.tf-v1-popover-tooltip.closing{transition:opacity 0.25s ease-in-out;opacity:0}.tf-v1-popover-unread-dot{width:8px;height:8px;border-radius:50%;background-color:#fa6b05;border:2px solid #fff;position:absolute;top:2px;right:2px}.tf-v1-popover-unread-dot.closing{transition:opacity 0.25s ease-in-out;opacity:0}.tf-v1-spinner{border:3px solid #aaa;font-size:40px;width:1em;height:1em;border-radius:0.5em;box-sizing:border-box;animation:spin 1s linear infinite;border-top-color:#fff;position:absolute;top:50%;left:50%;margin:-20px 0 0 -20px}@media (max-width: 480px){.tf-v1-popover.open{top:0;left:0;bottom:0;right:0;width:100% !important;height:100% !important;width:100vw !important;height:100vh !important;max-height:-webkit-fill-available;max-height:-moz-fill-available}.tf-v1-popover.open .tf-v1-popover-close{display:block}.tf-v1-popover-wrapper{border-radius:0;box-shadow:none}.tf-v1-popover-wrapper iframe{border-radius:0}.tf-v1-popover-close{position:absolute;color:#737373;font-size:24px;line-height:24px;width:14px;height:14px;text-align:center;cursor:pointer;opacity:0.75;transition:opacity 0.25s ease-in-out;text-decoration:none;top:6px;right:8px;z-index:1;opacity:0}.tf-v1-popover-close:hover{opacity:1}.tf-v1-popover-button{width:44px;height:44px;right:8px;bottom:8px}.tf-v1-popover-button-icon{font-size:20px}.tf-v1-popover-button-icon svg{margin-top:4px;max-height:24px;max-width:24px}.tf-v1-popover-button-icon img{max-width:44px;max-height:44px}.tf-v1-popover-tooltip{position:fixed;right:66px;bottom:8px;left:auto;font-size:12px}.tf-v1-popover-tooltip::before{bottom:14px}.tf-v1-popover-unread-dot{top:0;right:0}.tf-v1-spinner{border:3px solid #aaa;font-size:32px;width:1em;height:1em;border-radius:0.5em;box-sizing:border-box;animation:spin 1s linear infinite;border-top-color:#fff;position:absolute;top:50%;left:50%;margin:-16px 0 0 -16px}}\\n\";\n },\n 792: function _(e, t, n) {\n \"use strict\";\n\n n.r(t), t.default = \"@keyframes spin{to{transform:rotate(360deg)}}.tf-v1-popup{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.75);transition:opacity 0.25s ease-in-out;z-index:10001;display:flex;align-items:center;justify-content:center}.tf-v1-popup .tf-v1-iframe-wrapper{position:relative;transition:opacity 0.25s ease-in-out;min-width:360px;min-height:360px}.tf-v1-popup .tf-v1-iframe-wrapper iframe{width:100%;height:100%;border:none;overflow:hidden;border-radius:8px}.tf-v1-popup .tf-v1-close{position:absolute;color:#fff;font-size:24px;line-height:24px;width:14px;height:14px;text-align:center;cursor:pointer;opacity:0.75;transition:opacity 0.25s ease-in-out;text-decoration:none;top:-34px;right:0}.tf-v1-popup .tf-v1-close:hover{opacity:1}.tf-v1-popup .tf-v1-spinner{border:3px solid #aaa;font-size:40px;width:1em;height:1em;border-radius:0.5em;box-sizing:border-box;animation:spin 1s linear infinite;border-top-color:#fff;position:absolute;top:50%;left:50%;margin:-20px 0 0 -20px}@media (max-width: 480px){.tf-v1-popup{width:100% !important;height:100% !important;width:100vw !important;height:100vh !important;max-height:-webkit-fill-available;max-height:-moz-fill-available}.tf-v1-popup .tf-v1-iframe-wrapper{position:relative;transition:opacity 0.25s ease-in-out;min-width:100%;min-height:100%}.tf-v1-popup .tf-v1-iframe-wrapper iframe{border-radius:0}.tf-v1-popup .tf-v1-close{position:absolute;color:#737373;font-size:24px;line-height:24px;width:14px;height:14px;text-align:center;cursor:pointer;opacity:0.75;transition:opacity 0.25s ease-in-out;text-decoration:none;top:6px;right:8px}.tf-v1-popup .tf-v1-close:hover{opacity:1}}\\n\";\n },\n 838: function _(e, t, n) {\n \"use strict\";\n\n n.r(t), t.default = \"@keyframes spin{to{transform:rotate(360deg)}}.tf-v1-sidetab{position:fixed;top:50%;right:0;width:400px;height:580px;transform:translate(100%, -50%);box-shadow:0 2px 4px rgba(0,0,0,0.08),0 2px 12px rgba(0,0,0,0.06);z-index:10001;will-change:transform}.tf-v1-sidetab.ready{transition:transform 250ms ease-in-out}.tf-v1-sidetab iframe{width:100%;height:100%;border:none;overflow:hidden;border-radius:8px 0 0 8px}.tf-v1-sidetab.open{transform:translate(0, -50%)}.tf-v1-sidetab-wrapper{position:relative;height:100%}.tf-v1-sidetab-button{position:absolute;top:50%;left:-48px;transform:rotate(-90deg) translateX(-50%);transform-origin:left top;min-width:100px;max-width:540px;height:48px;display:flex;align-items:center;padding:0 16px;border-radius:8px 8px 0 0;color:white;box-shadow:0 2px 4px rgba(0,0,0,0.08),0 2px 12px rgba(0,0,0,0.06);background-color:#3a7685;cursor:pointer;border:0;text-decoration:none;outline:none}.tf-v1-sidetab-button-text{flex:1;font-size:18px;font-family:Helvetica, Arial, sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tf-v1-sidetab-button-icon{width:24px;height:24px;font-size:24px;transform:rotate(90deg);margin-right:12px;position:relative;order:-1}.tf-v1-sidetab-close{display:none}.tf-v1-sidetab .tf-v1-spinner{border:3px solid #aaa;font-size:24px;width:1em;height:1em;border-radius:0.5em;box-sizing:border-box;animation:spin 1s linear infinite;border-top-color:#fff;position:absolute;top:50%;left:50%;margin:-12px 0 0 -12px;top:0;left:0;margin:0}@media (max-width: 480px){.tf-v1-sidetab{transition:unset}.tf-v1-sidetab.ready{transition:unset}.tf-v1-sidetab.open{top:0;left:0;right:0;bottom:0;transform:translate(0, 0);width:100% !important;height:100% !important;width:100vw !important;height:100vh !important;max-height:-webkit-fill-available;max-height:-moz-fill-available}.tf-v1-sidetab-close{position:absolute;color:#737373;font-size:24px;line-height:24px;width:14px;height:14px;text-align:center;cursor:pointer;opacity:0.75;transition:opacity 0.25s ease-in-out;text-decoration:none;display:block;top:6px;right:8px;z-index:1}.tf-v1-sidetab-close:hover{opacity:1}}\\n\";\n },\n 630: function _(e, t, n) {\n \"use strict\";\n\n n.r(t), t.default = \"@keyframes spin{to{transform:rotate(360deg)}}.tf-v1-slider{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.75);transition:opacity 0.25s ease-in-out;z-index:10001}.tf-v1-slider .tf-v1-iframe-wrapper{height:100%;position:absolute;top:0;transition:right 0.5s ease-in-out, left 0.5s ease-in-out}.tf-v1-slider .tf-v1-iframe-wrapper iframe{width:100%;height:100%;border:none;overflow:hidden;border-radius:8px 0 0 8px}.tf-v1-slider .tf-v1-close{position:absolute;color:#fff;font-size:24px;line-height:24px;width:14px;height:14px;text-align:center;cursor:pointer;opacity:0.75;transition:opacity 0.25s ease-in-out;text-decoration:none;top:4px;left:-24px}.tf-v1-slider .tf-v1-close:hover{opacity:1}.tf-v1-slider .tf-v1-close:hover{opacity:1}.tf-v1-slider .tf-v1-spinner{border:3px solid #aaa;font-size:40px;width:1em;height:1em;border-radius:0.5em;box-sizing:border-box;animation:spin 1s linear infinite;border-top-color:#fff;position:absolute;top:50%;left:50%;margin:-20px 0 0 -20px}.tf-v1-slider.left .tf-v1-iframe-wrapper iframe{border-radius:0 8px 8px 0}.tf-v1-slider.left .tf-v1-close{left:auto;right:-24px}@media (max-width: 480px){.tf-v1-slider{width:100% !important;height:100% !important;width:100vw !important;height:100vh !important;max-height:-webkit-fill-available;max-height:-moz-fill-available}.tf-v1-slider .tf-v1-iframe-wrapper{width:100% !important;height:100%;transition:unset}.tf-v1-slider .tf-v1-iframe-wrapper iframe{border-radius:none}.tf-v1-slider .tf-v1-close{position:absolute;color:#737373;font-size:24px;line-height:24px;width:14px;height:14px;text-align:center;cursor:pointer;opacity:0.75;transition:opacity 0.25s ease-in-out;text-decoration:none;top:6px;right:8px;left:auto}.tf-v1-slider .tf-v1-close:hover{opacity:1}}\\n\";\n },\n 684: function _(e, t, n) {\n \"use strict\";\n\n n.r(t), t.default = \".tf-v1-widget{width:100%;height:100%;position:relative}.tf-v1-widget iframe{width:100%;height:100%;border:none;overflow:hidden;border-radius:8px}.tf-v1-widget-close{display:none}.tf-v1-widget-iframe-overlay{width:100%;height:100%;border:none;overflow:hidden;border-radius:8px;position:absolute;top:0;left:0}.tf-v1-widget-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10001;width:100% !important;height:100% !important;width:100vw !important;height:100vh !important;max-height:-webkit-fill-available;max-height:-moz-fill-available}.tf-v1-widget-fullscreen .tf-v1-widget-close{display:block;position:absolute;color:#737373;font-size:24px;line-height:24px;width:14px;height:14px;text-align:center;cursor:pointer;opacity:0.75;transition:opacity 0.25s ease-in-out;text-decoration:none;top:4px;right:6px;z-index:1}.tf-v1-widget-fullscreen .tf-v1-widget-close:hover{opacity:1}.tf-v1-widget-fullscreen iframe{border-radius:0}\\n\";\n },\n 281: function _(e, t, n) {\n \"use strict\";\n\n var o = this && this.__createBinding || (Object.create ? function (e, t, n, o) {\n void 0 === o && (o = n), Object.defineProperty(e, o, {\n enumerable: !0,\n get: function get() {\n return t[n];\n }\n });\n } : function (e, t, n, o) {\n void 0 === o && (o = n), e[o] = t[n];\n }),\n i = this && this.__exportStar || function (e, t) {\n for (var n in e) {\n \"default\" === n || Object.prototype.hasOwnProperty.call(t, n) || o(t, e, n);\n }\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), i(n(11), t), i(n(739), t), i(n(860), t);\n },\n 794: function _(e, t, n) {\n \"use strict\";\n\n var o = this && this.__importDefault || function (e) {\n return e && e.__esModule ? e : {\n default: e\n };\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.InlineStyle = void 0;\n var i = o(n(297));\n\n t.InlineStyle = function (e) {\n var t = e.filename,\n o = n(367)(\"./\" + t + \".css\");\n return i.default.createElement(\"style\", null, o.default);\n };\n },\n 11: function _(e, t, n) {\n \"use strict\";\n\n var o = this && this.__assign || function () {\n return (o = Object.assign || function (e) {\n for (var t, n = 1, o = arguments.length; n < o; n++) {\n for (var i in t = arguments[n]) {\n Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]);\n }\n }\n\n return e;\n }).apply(this, arguments);\n },\n i = this && this.__createBinding || (Object.create ? function (e, t, n, o) {\n void 0 === o && (o = n), Object.defineProperty(e, o, {\n enumerable: !0,\n get: function get() {\n return t[n];\n }\n });\n } : function (e, t, n, o) {\n void 0 === o && (o = n), e[o] = t[n];\n }),\n r = this && this.__setModuleDefault || (Object.create ? function (e, t) {\n Object.defineProperty(e, \"default\", {\n enumerable: !0,\n value: t\n });\n } : function (e, t) {\n e.default = t;\n }),\n a = this && this.__importStar || function (e) {\n if (e && e.__esModule) return e;\n var t = {};\n if (null != e) for (var n in e) {\n \"default\" !== n && Object.prototype.hasOwnProperty.call(e, n) && i(t, e, n);\n }\n return r(t, e), t;\n },\n s = this && this.__rest || function (e, t) {\n var n = {};\n\n for (var o in e) {\n Object.prototype.hasOwnProperty.call(e, o) && t.indexOf(o) < 0 && (n[o] = e[o]);\n }\n\n if (null != e && \"function\" == typeof Object.getOwnPropertySymbols) {\n var i = 0;\n\n for (o = Object.getOwnPropertySymbols(e); i < o.length; i++) {\n t.indexOf(o[i]) < 0 && Object.prototype.propertyIsEnumerable.call(e, o[i]) && (n[o[i]] = e[o[i]]);\n }\n }\n\n return n;\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.makeButtonComponent = void 0;\n var u = a(n(297)),\n c = n(794),\n d = {\n unmount: function unmount() {},\n open: function open() {}\n };\n\n t.makeButtonComponent = function (e, t) {\n return function (n) {\n var i = n.id,\n r = n.children,\n a = n.as,\n l = void 0 === a ? \"button\" : a,\n p = n.style,\n f = void 0 === p ? {} : p,\n v = n.className,\n m = void 0 === v ? \"\" : v,\n h = n.buttonProps,\n b = s(n, [\"id\", \"children\", \"as\", \"style\", \"className\", \"buttonProps\"]),\n g = u.useRef(d);\n u.useEffect(function () {\n return g.current = e(i, b), function () {\n return g.current.unmount();\n };\n }, [i, b]);\n var y = u.useMemo(function () {\n return function () {\n return g.current.open();\n };\n }, []),\n x = u.default.createElement(l, o({\n style: f,\n className: m,\n onClick: y,\n children: r\n }, h));\n return u.default.createElement(u.default.Fragment, null, u.default.createElement(c.InlineStyle, {\n filename: t\n }), x);\n };\n };\n },\n 739: function _(e, t, n) {\n \"use strict\";\n\n var o = this && this.__createBinding || (Object.create ? function (e, t, n, o) {\n void 0 === o && (o = n), Object.defineProperty(e, o, {\n enumerable: !0,\n get: function get() {\n return t[n];\n }\n });\n } : function (e, t, n, o) {\n void 0 === o && (o = n), e[o] = t[n];\n }),\n i = this && this.__setModuleDefault || (Object.create ? function (e, t) {\n Object.defineProperty(e, \"default\", {\n enumerable: !0,\n value: t\n });\n } : function (e, t) {\n e.default = t;\n }),\n r = this && this.__importStar || function (e) {\n if (e && e.__esModule) return e;\n var t = {};\n if (null != e) for (var n in e) {\n \"default\" !== n && Object.prototype.hasOwnProperty.call(e, n) && o(t, e, n);\n }\n return i(t, e), t;\n },\n a = this && this.__rest || function (e, t) {\n var n = {};\n\n for (var o in e) {\n Object.prototype.hasOwnProperty.call(e, o) && t.indexOf(o) < 0 && (n[o] = e[o]);\n }\n\n if (null != e && \"function\" == typeof Object.getOwnPropertySymbols) {\n var i = 0;\n\n for (o = Object.getOwnPropertySymbols(e); i < o.length; i++) {\n t.indexOf(o[i]) < 0 && Object.prototype.propertyIsEnumerable.call(e, o[i]) && (n[o[i]] = e[o[i]]);\n }\n }\n\n return n;\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.makeInitializerComponent = void 0;\n var s = r(n(297)),\n u = n(794);\n\n t.makeInitializerComponent = function (e, t) {\n return function (n) {\n var o = n.id,\n i = a(n, [\"id\"]);\n return s.useEffect(function () {\n var t = e(o, i);\n return function () {\n t.unmount();\n };\n }, [o, i]), s.default.createElement(u.InlineStyle, {\n filename: t\n });\n };\n };\n },\n 860: function _(e, t, n) {\n \"use strict\";\n\n var o = this && this.__assign || function () {\n return (o = Object.assign || function (e) {\n for (var t, n = 1, o = arguments.length; n < o; n++) {\n for (var i in t = arguments[n]) {\n Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]);\n }\n }\n\n return e;\n }).apply(this, arguments);\n },\n i = this && this.__createBinding || (Object.create ? function (e, t, n, o) {\n void 0 === o && (o = n), Object.defineProperty(e, o, {\n enumerable: !0,\n get: function get() {\n return t[n];\n }\n });\n } : function (e, t, n, o) {\n void 0 === o && (o = n), e[o] = t[n];\n }),\n r = this && this.__setModuleDefault || (Object.create ? function (e, t) {\n Object.defineProperty(e, \"default\", {\n enumerable: !0,\n value: t\n });\n } : function (e, t) {\n e.default = t;\n }),\n a = this && this.__importStar || function (e) {\n if (e && e.__esModule) return e;\n var t = {};\n if (null != e) for (var n in e) {\n \"default\" !== n && Object.prototype.hasOwnProperty.call(e, n) && i(t, e, n);\n }\n return r(t, e), t;\n },\n s = this && this.__rest || function (e, t) {\n var n = {};\n\n for (var o in e) {\n Object.prototype.hasOwnProperty.call(e, o) && t.indexOf(o) < 0 && (n[o] = e[o]);\n }\n\n if (null != e && \"function\" == typeof Object.getOwnPropertySymbols) {\n var i = 0;\n\n for (o = Object.getOwnPropertySymbols(e); i < o.length; i++) {\n t.indexOf(o[i]) < 0 && Object.prototype.propertyIsEnumerable.call(e, o[i]) && (n[o[i]] = e[o[i]]);\n }\n }\n\n return n;\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.Widget = void 0;\n var u = a(n(297)),\n c = n(611),\n d = n(794);\n\n t.Widget = function (e) {\n var t = e.id,\n n = e.style,\n i = void 0 === n ? {} : n,\n r = e.className,\n a = void 0 === r ? \"\" : r,\n l = s(e, [\"id\", \"style\", \"className\"]),\n p = u.useRef(null);\n return u.useEffect(function () {\n if (p.current) {\n var e = c.createWidget(t, o(o({}, l), {\n container: p.current\n }));\n return function () {\n e.unmount();\n };\n }\n }, [t, l]), u.default.createElement(u.default.Fragment, null, u.default.createElement(d.InlineStyle, {\n filename: \"widget\"\n }), u.default.createElement(\"div\", {\n style: i,\n className: a,\n ref: p\n }));\n };\n },\n 582: function _(e, t, n) {\n \"use strict\";\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.Sidetab = t.Popover = t.SliderButton = t.PopupButton = t.Widget = void 0;\n var o = n(611),\n i = n(281),\n r = n(797),\n a = r.memoComponent(i.Widget);\n t.Widget = a;\n var s = r.memoComponent(i.makeButtonComponent(o.createPopup, \"popup\"));\n t.PopupButton = s;\n var u = r.memoComponent(i.makeButtonComponent(o.createSlider, \"slider\"));\n t.SliderButton = u;\n var c = r.memoComponent(i.makeInitializerComponent(o.createPopover, \"popover\"));\n t.Popover = c;\n var d = r.memoComponent(i.makeInitializerComponent(o.createSidetab, \"sidetab\"));\n t.Sidetab = d;\n },\n 797: function _(e, t, n) {\n \"use strict\";\n\n var o = this && this.__createBinding || (Object.create ? function (e, t, n, o) {\n void 0 === o && (o = n), Object.defineProperty(e, o, {\n enumerable: !0,\n get: function get() {\n return t[n];\n }\n });\n } : function (e, t, n, o) {\n void 0 === o && (o = n), e[o] = t[n];\n }),\n i = this && this.__exportStar || function (e, t) {\n for (var n in e) {\n \"default\" === n || Object.prototype.hasOwnProperty.call(t, n) || o(t, e, n);\n }\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), i(n(553), t);\n },\n 553: function _(e, t, n) {\n \"use strict\";\n\n var o = this && this.__importDefault || function (e) {\n return e && e.__esModule ? e : {\n default: e\n };\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.memoComponent = t.propsAreEqual = void 0;\n var i = n(297),\n r = o(n(378));\n t.propsAreEqual = function (e, t) {\n return r.default(e, t);\n }, t.memoComponent = function (e) {\n return i.memo(e, t.propsAreEqual);\n };\n },\n 367: function _(e, t, n) {\n var o = {\n \"./popover.css\": 145,\n \"./popup.css\": 792,\n \"./sidetab.css\": 838,\n \"./slider.css\": 630,\n \"./widget.css\": 684\n };\n\n function i(e) {\n var t = r(e);\n return n(t);\n }\n\n function r(e) {\n if (!n.o(o, e)) {\n var t = new Error(\"Cannot find module '\" + e + \"'\");\n throw t.code = \"MODULE_NOT_FOUND\", t;\n }\n\n return o[e];\n }\n\n i.keys = function () {\n return Object.keys(o);\n }, i.resolve = r, e.exports = i, i.id = 367;\n },\n 611: function _(e) {\n e.exports = function () {\n \"use strict\";\n\n var e = {\n 27: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.FORM_BASE_URL = t.POPUP_SIZE = t.SLIDER_WIDTH = t.SLIDER_POSITION = t.SIDETAB_ATTRIBUTE = t.WIDGET_ATTRIBUTE = t.SLIDER_ATTRIBUTE = t.POPUP_ATTRIBUTE = t.POPOVER_ATTRIBUTE = void 0, t.POPOVER_ATTRIBUTE = \"data-tf-popover\", t.POPUP_ATTRIBUTE = \"data-tf-popup\", t.SLIDER_ATTRIBUTE = \"data-tf-slider\", t.WIDGET_ATTRIBUTE = \"data-tf-widget\", t.SIDETAB_ATTRIBUTE = \"data-tf-sidetab\", t.SLIDER_POSITION = \"right\", t.SLIDER_WIDTH = 800, t.POPUP_SIZE = 100, t.FORM_BASE_URL = \"https://form.typeform.com\";\n },\n 528: function _(e, t, n) {\n var o = this && this.__assign || function () {\n return (o = Object.assign || function (e) {\n for (var t, n = 1, o = arguments.length; n < o; n++) {\n for (var i in t = arguments[n]) {\n Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]);\n }\n }\n\n return e;\n }).apply(this, arguments);\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.createPopover = void 0;\n\n var i = n(747),\n r = n(320),\n a = function a(e, t) {\n var n = e.parentNode;\n n && (n.removeChild(e), n.appendChild(t));\n },\n s = function s(e, t) {\n void 0 === e && (e = \"div\"), void 0 === t && (t = \"tf-v1-popover-button-icon\");\n var n = document.createElement(e);\n return n.className = t, n.innerHTML = \"×\", n.dataset.testid = t, n;\n },\n u = {\n buttonColor: \"#3a7685\"\n };\n\n t.createPopover = function (e, t) {\n void 0 === t && (t = {});\n\n var n,\n c,\n d,\n l,\n p,\n f,\n v = o(o({}, u), t),\n m = i.createIframe(e, \"popover\", v),\n h = m.iframe,\n b = m.embedId,\n g = function (e, t) {\n var n = document.createElement(\"div\");\n return n.className = \"tf-v1-popover\", n.dataset.testid = \"tf-v1-popover\", i.setElementSize(n, {\n width: e,\n height: t\n });\n }(v.width, v.height),\n y = function () {\n var e = document.createElement(\"div\");\n return e.className = \"tf-v1-popover-wrapper\", e.dataset.testid = \"tf-v1-popover-wrapper\", e;\n }(),\n x = (n = v.customIcon, c = v.buttonColor || u.buttonColor, d = i.getTextColor(c), (l = document.createElement(\"div\")).className = \"tf-v1-popover-button-icon\", l.innerHTML = n ? \"popover trigger icon button\" : '\\n \\n ', l.dataset.testid = \"default-icon\", l),\n w = function () {\n var e = document.createElement(\"div\");\n e.className = \"tf-v1-spinner\";\n var t = document.createElement(\"div\");\n return t.className = \"tf-v1-popover-button-icon\", t.dataset.testid = \"spinner-icon\", t.append(e), t;\n }(),\n O = s(),\n _ = s(\"a\", \"tf-v1-popover-close\"),\n j = function (e) {\n var t = i.getTextColor(e),\n n = document.createElement(\"button\");\n return n.className = \"tf-v1-popover-button\", n.dataset.testid = \"tf-v1-popover-button\", n.style.backgroundColor = e, n.style.color = t, n;\n }(v.buttonColor || u.buttonColor);\n\n (v.container || document.body).append(g), y.append(h), g.append(j), g.append(_), j.append(x);\n\n var P = function P() {\n p && p.parentNode && (p.classList.add(\"closing\"), setTimeout(function () {\n i.unmountElement(p);\n }, 250));\n };\n\n v.tooltip && v.tooltip.length > 0 && (p = function (e, t) {\n var n = document.createElement(\"span\");\n n.className = \"tf-v1-popover-tooltip-close\", n.dataset.testid = \"tf-v1-popover-tooltip-close\", n.innerHTML = \"×\", n.onclick = t;\n var o = document.createElement(\"div\");\n o.className = \"tf-v1-popover-tooltip-text\", o.innerHTML = e;\n var i = document.createElement(\"div\");\n return i.className = \"tf-v1-popover-tooltip\", i.dataset.testid = \"tf-v1-popover-tooltip\", i.appendChild(o), i.appendChild(n), i;\n }(v.tooltip, P), g.append(p)), v.notificationDays && (v.enableSandbox || r.canBuildNotificationDot(e)) && (f = r.buildNotificationDot(), j.append(f)), h.onload = function () {\n g.classList.add(\"open\"), y.style.opacity = \"1\", _.style.opacity = \"1\", a(w, O), i.addCustomKeyboardListener(C);\n };\n\n var E = function E() {\n i.isOpen(y) || (P(), f && (f.classList.add(\"closing\"), v.notificationDays && !v.enableSandbox && r.saveNotificationDotHideUntilTime(e, v.notificationDays), setTimeout(function () {\n i.unmountElement(f);\n }, 250)), setTimeout(function () {\n i.isInPage(y) ? (y.style.opacity = \"0\", _.style.opacity = \"0\", y.style.display = \"flex\", setTimeout(function () {\n g.classList.add(\"open\"), y.style.opacity = \"1\", _.style.opacity = \"1\";\n }), a(x, O)) : (g.append(y), a(x, w), y.style.opacity = \"0\", _.style.opacity = \"0\");\n }));\n },\n C = function C() {\n var e;\n i.isOpen(g) && (null === (e = t.onClose) || void 0 === e || e.call(t), setTimeout(function () {\n v.keepSession ? y.style.display = \"none\" : i.unmountElement(y), g.classList.remove(\"open\"), a(O, x);\n }, 250));\n };\n\n i.setAutoClose(b, v.autoClose, C);\n\n var I = function I() {\n i.isOpen(y) ? C() : E();\n };\n\n return j.onclick = I, _.onclick = C, v.open && !i.isOpen(y) && i.handleCustomOpen(E, v.open, v.openValue), {\n open: E,\n close: C,\n toggle: I,\n refresh: function refresh() {\n var e;\n null === (e = h.contentWindow) || void 0 === e || e.location.reload();\n },\n unmount: function unmount() {\n i.unmountElement(g);\n }\n };\n };\n },\n 797: function _(e, t, n) {\n var o = this && this.__createBinding || (Object.create ? function (e, t, n, o) {\n void 0 === o && (o = n), Object.defineProperty(e, o, {\n enumerable: !0,\n get: function get() {\n return t[n];\n }\n });\n } : function (e, t, n, o) {\n void 0 === o && (o = n), e[o] = t[n];\n }),\n i = this && this.__exportStar || function (e, t) {\n for (var n in e) {\n \"default\" === n || Object.prototype.hasOwnProperty.call(t, n) || o(t, e, n);\n }\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), i(n(528), t), i(n(100), t);\n },\n 320: function _(e, t) {\n var n = this && this.__assign || function () {\n return (n = Object.assign || function (e) {\n for (var t, n = 1, o = arguments.length; n < o; n++) {\n for (var i in t = arguments[n]) {\n Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]);\n }\n }\n\n return e;\n }).apply(this, arguments);\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.buildNotificationDot = t.canBuildNotificationDot = t.saveNotificationDotHideUntilTime = void 0;\n\n var o = \"tfNotificationData\",\n i = function i() {\n var e = localStorage.getItem(o);\n return e ? JSON.parse(e) : {};\n },\n r = function r(e) {\n e && localStorage.setItem(o, JSON.stringify(e));\n };\n\n t.saveNotificationDotHideUntilTime = function (e, t) {\n var o,\n a = new Date();\n a.setDate(a.getDate() + t), r(n(n({}, i()), ((o = {})[e] = {\n hideUntilTime: a.getTime()\n }, o)));\n }, t.canBuildNotificationDot = function (e) {\n var t = function (e) {\n var t;\n return (null === (t = i()[e]) || void 0 === t ? void 0 : t.hideUntilTime) || 0;\n }(e);\n\n return new Date().getTime() > t && (t && function (e) {\n var t = i();\n delete t[e], r(t);\n }(e), !0);\n }, t.buildNotificationDot = function () {\n var e = document.createElement(\"span\");\n return e.className = \"tf-v1-popover-unread-dot\", e.dataset.testid = \"tf-v1-popover-unread-dot\", e;\n };\n },\n 100: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n });\n },\n 630: function _(e, t, n) {\n var o = this && this.__rest || function (e, t) {\n var n = {};\n\n for (var o in e) {\n Object.prototype.hasOwnProperty.call(e, o) && t.indexOf(o) < 0 && (n[o] = e[o]);\n }\n\n if (null != e && \"function\" == typeof Object.getOwnPropertySymbols) {\n var i = 0;\n\n for (o = Object.getOwnPropertySymbols(e); i < o.length; i++) {\n t.indexOf(o[i]) < 0 && Object.prototype.propertyIsEnumerable.call(e, o[i]) && (n[o[i]] = e[o[i]]);\n }\n }\n\n return n;\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.createPopup = void 0;\n var i = n(747),\n r = n(27),\n a = n(747);\n\n t.createPopup = function (e, t) {\n if (void 0 === t && (t = {}), !i.hasDom()) return {\n open: function open() {},\n close: function close() {},\n toggle: function toggle() {},\n refresh: function refresh() {},\n unmount: function unmount() {}\n };\n\n var n = t.width,\n s = t.height,\n u = t.size,\n c = void 0 === u ? r.POPUP_SIZE : u,\n d = t.onClose,\n l = o(t, [\"width\", \"height\", \"size\", \"onClose\"]),\n p = i.createIframe(e, \"popup\", l),\n f = p.iframe,\n v = p.embedId,\n m = document.body.style.overflow,\n h = function () {\n var e = document.createElement(\"div\");\n return e.className = \"tf-v1-popup\", e.style.opacity = \"0\", e;\n }(),\n b = function () {\n var e = document.createElement(\"div\");\n return e.className = \"tf-v1-spinner\", e;\n }(),\n g = function (e, t, n) {\n var o = document.createElement(\"div\");\n return o.className = \"tf-v1-iframe-wrapper\", o.style.opacity = \"0\", i.isDefined(e) && i.isDefined(t) ? i.setElementSize(o, {\n width: e,\n height: t\n }) : (o.style.width = \"calc(\" + n + \"% - 80px)\", o.style.height = \"calc(\" + n + \"% - 80px)\", o);\n }(n, s, c);\n\n g.append(f), h.append(b), h.append(g);\n var y = l.container || document.body;\n\n f.onload = function () {\n g.style.opacity = \"1\", setTimeout(function () {\n b.style.display = \"none\";\n }, 250), i.addCustomKeyboardListener(w);\n };\n\n var x = function x() {\n a.isOpen(h) || (a.isInPage(h) ? h.style.display = \"flex\" : (b.style.display = \"block\", y.append(h)), document.body.style.overflow = \"hidden\", setTimeout(function () {\n h.style.opacity = \"1\";\n }));\n },\n w = function w() {\n a.isOpen(h) && (null == d || d(), h.style.opacity = \"0\", document.body.style.overflow = m, setTimeout(function () {\n l.keepSession ? h.style.display = \"none\" : O();\n }, 250));\n };\n\n g.append(function (e) {\n var t = document.createElement(\"a\");\n return t.className = \"tf-v1-close\", t.innerHTML = \"×\", t.onclick = e, t;\n }(w)), i.setAutoClose(v, l.autoClose, w);\n\n var O = function O() {\n i.unmountElement(h);\n };\n\n return l.open && !a.isOpen(h) && i.handleCustomOpen(x, l.open, l.openValue), {\n open: x,\n close: w,\n toggle: function toggle() {\n a.isOpen(h) ? w() : x();\n },\n refresh: function refresh() {\n var e;\n null === (e = f.contentWindow) || void 0 === e || e.location.reload();\n },\n unmount: O\n };\n };\n },\n 970: function _(e, t, n) {\n var o = this && this.__createBinding || (Object.create ? function (e, t, n, o) {\n void 0 === o && (o = n), Object.defineProperty(e, o, {\n enumerable: !0,\n get: function get() {\n return t[n];\n }\n });\n } : function (e, t, n, o) {\n void 0 === o && (o = n), e[o] = t[n];\n }),\n i = this && this.__exportStar || function (e, t) {\n for (var n in e) {\n \"default\" === n || Object.prototype.hasOwnProperty.call(t, n) || o(t, e, n);\n }\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), i(n(630), t), i(n(394), t);\n },\n 394: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n });\n },\n 382: function _(e, t, n) {\n var o = this && this.__assign || function () {\n return (o = Object.assign || function (e) {\n for (var t, n = 1, o = arguments.length; n < o; n++) {\n for (var i in t = arguments[n]) {\n Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]);\n }\n }\n\n return e;\n }).apply(this, arguments);\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.createSidetab = void 0;\n\n var i = n(747),\n r = {\n buttonColor: \"#3a7685\",\n buttonText: \"Launch me\"\n },\n a = function a(e, t) {\n void 0 === e && (e = \"div\"), void 0 === t && (t = \"tf-v1-sidetab-button-icon\");\n var n = document.createElement(e);\n return n.className = t, n.innerHTML = \"×\", n.dataset.testid = t, n;\n },\n s = function s(e, t) {\n var n = e.parentNode;\n n && (n.removeChild(e), n.appendChild(t));\n };\n\n t.createSidetab = function (e, t) {\n void 0 === t && (t = {});\n\n var n,\n u,\n c,\n d,\n l,\n p,\n f,\n v = o(o({}, r), t),\n m = i.createIframe(e, \"side-tab\", v),\n h = m.iframe,\n b = m.embedId,\n g = (n = v.width, u = v.height, (c = document.createElement(\"div\")).className = \"tf-v1-sidetab\", c.dataset.testid = \"tf-v1-sidetab\", i.setElementSize(c, {\n width: n,\n height: u\n })),\n y = function () {\n var e = document.createElement(\"div\");\n return e.className = \"tf-v1-sidetab-wrapper\", e.dataset.testid = \"tf-v1-sidetab-wrapper\", e;\n }(),\n x = function () {\n var e = document.createElement(\"div\");\n e.className = \"tf-v1-spinner\";\n var t = document.createElement(\"div\");\n return t.className = \"tf-v1-sidetab-button-icon\", t.dataset.testid = \"spinner-icon\", t.append(e), t;\n }(),\n w = function (e) {\n var t = i.getTextColor(e),\n n = document.createElement(\"button\");\n return n.className = \"tf-v1-sidetab-button\", n.style.backgroundColor = e, n.style.color = t, n;\n }(v.buttonColor || r.buttonColor),\n O = function (e) {\n var t = document.createElement(\"span\");\n return t.className = \"tf-v1-sidetab-button-text\", t.innerHTML = e, t;\n }(v.buttonText || r.buttonText),\n _ = (d = v.customIcon, l = v.buttonColor || r.buttonColor, p = i.getTextColor(l), (f = document.createElement(\"div\")).className = \"tf-v1-sidetab-button-icon\", f.innerHTML = d ? \"sidetab trigger icon button' : '\\n \\n', f.dataset.testid = \"default-icon\", f),\n j = a(),\n P = a(\"a\", \"tf-v1-sidetab-close\");\n\n (v.container || document.body).append(g), y.append(h), g.append(w), g.append(P), w.append(_), w.append(O), setTimeout(function () {\n g.classList.add(\"ready\");\n }, 250), h.onload = function () {\n g.classList.add(\"open\"), s(x, j), i.addCustomKeyboardListener(C);\n };\n\n var E = function E() {\n i.isOpen(y) || (i.isInPage(y) ? (y.style.display = \"flex\", g.classList.add(\"open\"), s(_, j)) : (g.append(y), s(_, x)));\n },\n C = function C() {\n var e;\n i.isOpen(y) && (null === (e = v.onClose) || void 0 === e || e.call(v), g.classList.remove(\"open\"), setTimeout(function () {\n v.keepSession ? y.style.display = \"none\" : i.unmountElement(y), s(j, _);\n }, 250));\n };\n\n i.setAutoClose(b, v.autoClose, C);\n\n var I = function I() {\n i.isOpen(y) ? C() : E();\n };\n\n return w.onclick = I, P.onclick = C, v.open && !i.isOpen(y) && i.handleCustomOpen(E, v.open, v.openValue), {\n open: E,\n close: C,\n toggle: I,\n refresh: function refresh() {\n var e;\n null === (e = h.contentWindow) || void 0 === e || e.location.reload();\n },\n unmount: function unmount() {\n i.unmountElement(g);\n }\n };\n };\n },\n 434: function _(e, t, n) {\n var o = this && this.__createBinding || (Object.create ? function (e, t, n, o) {\n void 0 === o && (o = n), Object.defineProperty(e, o, {\n enumerable: !0,\n get: function get() {\n return t[n];\n }\n });\n } : function (e, t, n, o) {\n void 0 === o && (o = n), e[o] = t[n];\n }),\n i = this && this.__exportStar || function (e, t) {\n for (var n in e) {\n \"default\" === n || Object.prototype.hasOwnProperty.call(t, n) || o(t, e, n);\n }\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), i(n(382), t), i(n(668), t);\n },\n 668: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n });\n },\n 603: function _(e, t, n) {\n var o = this && this.__rest || function (e, t) {\n var n = {};\n\n for (var o in e) {\n Object.prototype.hasOwnProperty.call(e, o) && t.indexOf(o) < 0 && (n[o] = e[o]);\n }\n\n if (null != e && \"function\" == typeof Object.getOwnPropertySymbols) {\n var i = 0;\n\n for (o = Object.getOwnPropertySymbols(e); i < o.length; i++) {\n t.indexOf(o[i]) < 0 && Object.prototype.propertyIsEnumerable.call(e, o[i]) && (n[o[i]] = e[o[i]]);\n }\n }\n\n return n;\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.createSlider = void 0;\n var i = n(747),\n r = n(27);\n\n t.createSlider = function (e, t) {\n if (void 0 === t && (t = {}), !i.hasDom()) return {\n open: function open() {},\n close: function close() {},\n toggle: function toggle() {},\n refresh: function refresh() {},\n unmount: function unmount() {}\n };\n\n var n = t.position,\n a = void 0 === n ? r.SLIDER_POSITION : n,\n s = t.width,\n u = void 0 === s ? r.SLIDER_WIDTH : s,\n c = t.onClose,\n d = o(t, [\"position\", \"width\", \"onClose\"]),\n l = i.createIframe(e, \"slider\", d),\n p = l.iframe,\n f = l.embedId,\n v = document.body.style.overflow,\n m = function (e) {\n var t = document.createElement(\"div\");\n return t.className = \"tf-v1-slider \" + e, t.style.opacity = \"0\", t;\n }(a),\n h = function () {\n var e = document.createElement(\"div\");\n return e.className = \"tf-v1-spinner\", e;\n }(),\n b = function (e, t) {\n var n = document.createElement(\"div\");\n return n.className = \"tf-v1-iframe-wrapper\", n.style[e] = \"-100%\", i.setElementSize(n, {\n width: t\n });\n }(a, u);\n\n b.append(p), m.append(h), m.append(b);\n var g = d.container || document.body;\n\n p.onload = function () {\n b.style[a] = \"0\", setTimeout(function () {\n h.style.display = \"none\";\n }, 500), i.addCustomKeyboardListener(x);\n };\n\n var y = function y() {\n i.isOpen(m) || (i.isInPage(m) ? (m.style.display = \"flex\", setTimeout(function () {\n b.style[a] = \"0\";\n })) : (g.append(m), h.style.display = \"block\"), document.body.style.overflow = \"hidden\", setTimeout(function () {\n m.style.opacity = \"1\";\n }));\n },\n x = function x() {\n i.isOpen(m) && (null == c || c(), m.style.opacity = \"0\", b.style[a] = \"-100%\", document.body.style.overflow = v, setTimeout(function () {\n d.keepSession ? m.style.display = \"none\" : w();\n }, 500));\n };\n\n i.setAutoClose(f, d.autoClose, x);\n\n var w = function w() {\n i.unmountElement(m);\n };\n\n return b.append(function (e) {\n var t = document.createElement(\"a\");\n return t.className = \"tf-v1-close\", t.innerHTML = \"×\", t.onclick = e, t;\n }(x)), d.open && !i.isOpen(m) && i.handleCustomOpen(y, d.open, d.openValue), {\n open: y,\n close: x,\n toggle: function toggle() {\n i.isOpen(m) ? x() : y();\n },\n refresh: function refresh() {\n var e;\n null === (e = p.contentWindow) || void 0 === e || e.location.reload();\n },\n unmount: w\n };\n };\n },\n 331: function _(e, t, n) {\n var o = this && this.__createBinding || (Object.create ? function (e, t, n, o) {\n void 0 === o && (o = n), Object.defineProperty(e, o, {\n enumerable: !0,\n get: function get() {\n return t[n];\n }\n });\n } : function (e, t, n, o) {\n void 0 === o && (o = n), e[o] = t[n];\n }),\n i = this && this.__exportStar || function (e, t) {\n for (var n in e) {\n \"default\" === n || Object.prototype.hasOwnProperty.call(t, n) || o(t, e, n);\n }\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), i(n(603), t), i(n(162), t);\n },\n 162: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n });\n },\n 718: function _(e, t, n) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.createWidget = void 0;\n var o = n(747),\n i = n(554),\n r = n(313);\n\n t.createWidget = function (e, t) {\n if (!o.hasDom()) return {\n refresh: function refresh() {},\n unmount: function unmount() {}\n };\n var n = t;\n t.inlineOnMobile || !t.forceTouch && !o.isFullscreen() || (n.enableFullscreen = !0, n.forceTouch = !0);\n\n var a,\n s = o.createIframe(e, \"widget\", n),\n u = s.embedId,\n c = s.iframe,\n d = r.buildWidget(c, t.width, t.height),\n l = function l() {\n return t.container.append(d);\n };\n\n if (t.container.innerHTML = \"\", t.lazy ? o.lazyInitialize(t.container, l) : l(), n.enableFullscreen) {\n var p = t.container;\n window.addEventListener(\"message\", i.getWelcomeScreenHiddenHandler(u, p));\n var f = ((a = document.createElement(\"a\")).className = \"tf-v1-widget-close\", a.innerHTML = \"×\", a);\n f.onclick = function () {\n var e;\n\n if (null === (e = t.onClose) || void 0 === e || e.call(t), p.classList.remove(\"tf-v1-widget-fullscreen\"), t.keepSession) {\n var n = document.createElement(\"div\");\n n.className = \"tf-v1-widget-iframe-overlay\", n.onclick = function () {\n p.classList.add(\"tf-v1-widget-fullscreen\"), o.unmountElement(n);\n }, d.append(n);\n } else t.container.innerHTML = \"\", l(), p.append(f);\n }, p.append(f);\n }\n\n return {\n refresh: function refresh() {\n var e;\n return null === (e = c.contentWindow) || void 0 === e ? void 0 : e.location.reload();\n },\n unmount: function unmount() {\n return o.unmountElement(d);\n }\n };\n };\n },\n 419: function _(e, t, n) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.buildWidget = void 0;\n var o = n(747);\n\n t.buildWidget = function (e, t, n) {\n var i = document.createElement(\"div\");\n return i.className = \"tf-v1-widget\", i.append(e), o.setElementSize(i, {\n width: t,\n height: n\n });\n };\n },\n 313: function _(e, t, n) {\n var o = this && this.__createBinding || (Object.create ? function (e, t, n, o) {\n void 0 === o && (o = n), Object.defineProperty(e, o, {\n enumerable: !0,\n get: function get() {\n return t[n];\n }\n });\n } : function (e, t, n, o) {\n void 0 === o && (o = n), e[o] = t[n];\n }),\n i = this && this.__exportStar || function (e, t) {\n for (var n in e) {\n \"default\" === n || Object.prototype.hasOwnProperty.call(t, n) || o(t, e, n);\n }\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), i(n(419), t);\n },\n 321: function _(e, t, n) {\n var o = this && this.__createBinding || (Object.create ? function (e, t, n, o) {\n void 0 === o && (o = n), Object.defineProperty(e, o, {\n enumerable: !0,\n get: function get() {\n return t[n];\n }\n });\n } : function (e, t, n, o) {\n void 0 === o && (o = n), e[o] = t[n];\n }),\n i = this && this.__exportStar || function (e, t) {\n for (var n in e) {\n \"default\" === n || Object.prototype.hasOwnProperty.call(t, n) || o(t, e, n);\n }\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), i(n(718), t), i(n(58), t);\n },\n 58: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n });\n },\n 920: function _(e, t, n) {\n var o = this && this.__createBinding || (Object.create ? function (e, t, n, o) {\n void 0 === o && (o = n), Object.defineProperty(e, o, {\n enumerable: !0,\n get: function get() {\n return t[n];\n }\n });\n } : function (e, t, n, o) {\n void 0 === o && (o = n), e[o] = t[n];\n }),\n i = this && this.__exportStar || function (e, t) {\n for (var n in e) {\n \"default\" === n || Object.prototype.hasOwnProperty.call(t, n) || o(t, e, n);\n }\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), i(n(797), t), i(n(970), t), i(n(331), t), i(n(321), t), i(n(434), t);\n },\n 626: function _(e, t, n) {\n var o = this && this.__assign || function () {\n return (o = Object.assign || function (e) {\n for (var t, n = 1, o = arguments.length; n < o; n++) {\n for (var i in t = arguments[n]) {\n Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]);\n }\n }\n\n return e;\n }).apply(this, arguments);\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.buildIframeSrc = void 0;\n var i = n(27),\n r = n(527),\n a = n(346),\n s = n(698),\n u = {\n widget: \"embed-widget\",\n popup: \"popup-blank\",\n slider: \"popup-drawer\",\n popover: \"popup-popover\",\n \"side-tab\": \"popup-side-panel\"\n };\n\n t.buildIframeSrc = function (e) {\n var t = e.formId,\n n = e.type,\n c = e.embedId,\n d = e.options,\n l = function (e, t, n) {\n var i = n.transitiveSearchParams,\n r = n.source,\n a = n.medium,\n c = n.mediumVersion,\n d = n.hideFooter,\n l = n.hideHeaders,\n p = n.opacity,\n f = n.disableTracking,\n v = n.enableSandbox,\n m = n.disableAutoFocus,\n h = n.shareGaInstance,\n b = n.forceTouch,\n g = n.enableFullscreen,\n y = n.tracking,\n x = s.getTransitiveSearchParams(i);\n return o(o(o({}, {\n \"typeform-embed-id\": t,\n \"typeform-embed\": u[e],\n \"typeform-source\": r,\n \"typeform-medium\": a,\n \"typeform-medium-version\": c,\n \"embed-hide-footer\": d ? \"true\" : void 0,\n \"embed-hide-headers\": l ? \"true\" : void 0,\n \"embed-opacity\": p,\n \"disable-tracking\": f || v ? \"true\" : void 0,\n \"disable-auto-focus\": m ? \"true\" : void 0,\n \"__dangerous-disable-submissions\": v ? \"true\" : void 0,\n \"share-ga-instance\": h ? \"true\" : void 0,\n \"force-touch\": b ? \"true\" : void 0,\n \"add-placeholder-ws\": \"widget\" === e && g ? \"true\" : void 0\n }), x), y);\n }(n, c, function (e) {\n return o(o({}, {\n source: null === (t = null === window || void 0 === window ? void 0 : window.location) || void 0 === t ? void 0 : t.hostname.replace(/^www\\./, \"\"),\n medium: \"embed-sdk\",\n mediumVersion: \"next\"\n }), r.removeUndefinedKeys(e));\n var t;\n }(d)),\n p = function (e, t) {\n void 0 === t && (t = !1);\n var n = t ? \"c\" : \"to\";\n return new URL(i.FORM_BASE_URL + \"/\" + n + \"/\" + e);\n }(t, d.chat);\n\n if (Object.entries(l).filter(function (e) {\n var t = e[1];\n return a.isDefined(t);\n }).forEach(function (e) {\n var t = e[0],\n n = e[1];\n p.searchParams.set(t, n);\n }), d.hidden) {\n var f = new URL(i.FORM_BASE_URL);\n Object.entries(d.hidden).filter(function (e) {\n var t = e[1];\n return a.isDefined(t);\n }).forEach(function (e) {\n var t = e[0],\n n = e[1];\n f.searchParams.set(t, n);\n });\n var v = f.searchParams.toString();\n v && (p.hash = v);\n }\n\n return p.href;\n };\n },\n 972: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.handleCustomOpen = void 0, t.handleCustomOpen = function (e, t, n) {\n switch (t) {\n case \"load\":\n e();\n break;\n\n case \"exit\":\n n && function (e, t) {\n var n = 0,\n o = function o(i) {\n i.clientY < e && i.clientY < n ? (document.removeEventListener(\"mousemove\", o), t()) : n = i.clientY;\n };\n\n document.addEventListener(\"mousemove\", o);\n }(n, e);\n break;\n\n case \"time\":\n setTimeout(function () {\n e();\n }, n);\n break;\n\n case \"scroll\":\n n && function (e, t) {\n var n = function n() {\n var o = window.pageYOffset || document.documentElement.scrollTop,\n i = document.documentElement.clientTop || 0,\n r = document.documentElement.scrollHeight,\n a = o - i,\n s = a / r * 100,\n u = a + window.innerHeight >= r;\n (s >= e || u) && (t(), document.removeEventListener(\"scroll\", n));\n };\n\n document.addEventListener(\"scroll\", n);\n }(n, e);\n }\n };\n },\n 553: function _(e, t, n) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.createIframe = void 0;\n var o = n(626),\n i = n(747),\n r = n(866),\n a = n(554),\n s = n(256),\n u = n(144);\n\n t.createIframe = function (e, t, n) {\n var c = r.generateEmbedId(),\n d = n.iframeProps,\n l = void 0 === d ? {} : d,\n p = n.onReady,\n f = n.onQuestionChanged,\n v = n.onSubmit,\n m = n.shareGaInstance,\n h = o.buildIframeSrc({\n formId: e,\n embedId: c,\n type: t,\n options: n\n }),\n b = document.createElement(\"iframe\");\n return b.src = h, b.dataset.testid = \"iframe\", b.style.border = \"0px\", b.allow = \"microphone; camera\", Object.keys(l).forEach(function (e) {\n b.setAttribute(e, l[e]);\n }), b.addEventListener(\"load\", s.triggerIframeRedraw, {\n once: !0\n }), window.addEventListener(\"message\", a.getFormReadyHandler(c, p)), window.addEventListener(\"message\", a.getFormQuestionChangedHandler(c, f)), window.addEventListener(\"message\", a.getFormSubmitHandler(c, v)), \"widget\" !== t && window.addEventListener(\"message\", u.dispatchCustomKeyEventFromIframe), m && window.addEventListener(\"message\", a.getFormReadyHandler(c, function () {\n i.setupGaInstance(b, c, m);\n })), {\n iframe: b,\n embedId: c\n };\n };\n },\n 866: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.generateEmbedId = void 0, t.generateEmbedId = function () {\n var e = Math.random();\n return String(e).split(\".\")[1];\n };\n },\n 554: function _(e, t) {\n var n = this && this.__rest || function (e, t) {\n var n = {};\n\n for (var o in e) {\n Object.prototype.hasOwnProperty.call(e, o) && t.indexOf(o) < 0 && (n[o] = e[o]);\n }\n\n if (null != e && \"function\" == typeof Object.getOwnPropertySymbols) {\n var i = 0;\n\n for (o = Object.getOwnPropertySymbols(e); i < o.length; i++) {\n t.indexOf(o[i]) < 0 && Object.prototype.propertyIsEnumerable.call(e, o[i]) && (n[o[i]] = e[o[i]]);\n }\n }\n\n return n;\n };\n\n function o(e, t, o) {\n return function (i) {\n var r = i.data,\n a = r.type,\n s = r.embedId,\n u = n(r, [\"type\", \"embedId\"]);\n a === e && s === t && (null == o || o(u));\n };\n }\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.getFormEventHandler = t.getWelcomeScreenHiddenHandler = t.getFormSubmitHandler = t.getFormQuestionChangedHandler = t.getFormReadyHandler = void 0, t.getFormReadyHandler = function (e, t) {\n return o(\"form-ready\", e, t);\n }, t.getFormQuestionChangedHandler = function (e, t) {\n return o(\"form-screen-changed\", e, t);\n }, t.getFormSubmitHandler = function (e, t) {\n return o(\"form-submit\", e, t);\n }, t.getWelcomeScreenHiddenHandler = function (e, t) {\n return o(\"welcome-screen-hidden\", e, function () {\n t.classList.add(\"tf-v1-widget-fullscreen\");\n });\n }, t.getFormEventHandler = o;\n },\n 339: function _(e, t, n) {\n var o = this && this.__createBinding || (Object.create ? function (e, t, n, o) {\n void 0 === o && (o = n), Object.defineProperty(e, o, {\n enumerable: !0,\n get: function get() {\n return t[n];\n }\n });\n } : function (e, t, n, o) {\n void 0 === o && (o = n), e[o] = t[n];\n }),\n i = this && this.__exportStar || function (e, t) {\n for (var n in e) {\n \"default\" === n || Object.prototype.hasOwnProperty.call(t, n) || o(t, e, n);\n }\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), i(n(553), t), i(n(144), t);\n },\n 144: function _(e, t) {\n var n = this && this.__awaiter || function (e, t, n, o) {\n return new (n || (n = Promise))(function (i, r) {\n function a(e) {\n try {\n u(o.next(e));\n } catch (e) {\n r(e);\n }\n }\n\n function s(e) {\n try {\n u(o.throw(e));\n } catch (e) {\n r(e);\n }\n }\n\n function u(e) {\n var t;\n e.done ? i(e.value) : (t = e.value, t instanceof n ? t : new n(function (e) {\n e(t);\n })).then(a, s);\n }\n\n u((o = o.apply(e, t || [])).next());\n });\n },\n o = this && this.__generator || function (e, t) {\n var n,\n o,\n i,\n r,\n a = {\n label: 0,\n sent: function sent() {\n if (1 & i[0]) throw i[1];\n return i[1];\n },\n trys: [],\n ops: []\n };\n return r = {\n next: s(0),\n throw: s(1),\n return: s(2)\n }, \"function\" == typeof Symbol && (r[Symbol.iterator] = function () {\n return this;\n }), r;\n\n function s(r) {\n return function (s) {\n return function (r) {\n if (n) throw new TypeError(\"Generator is already executing.\");\n\n for (; a;) {\n try {\n if (n = 1, o && (i = 2 & r[0] ? o.return : r[0] ? o.throw || ((i = o.return) && i.call(o), 0) : o.next) && !(i = i.call(o, r[1])).done) return i;\n\n switch (o = 0, i && (r = [2 & r[0], i.value]), r[0]) {\n case 0:\n case 1:\n i = r;\n break;\n\n case 4:\n return a.label++, {\n value: r[1],\n done: !1\n };\n\n case 5:\n a.label++, o = r[1], r = [0];\n continue;\n\n case 7:\n r = a.ops.pop(), a.trys.pop();\n continue;\n\n default:\n if (!((i = (i = a.trys).length > 0 && i[i.length - 1]) || 6 !== r[0] && 2 !== r[0])) {\n a = 0;\n continue;\n }\n\n if (3 === r[0] && (!i || r[1] > i[0] && r[1] < i[3])) {\n a.label = r[1];\n break;\n }\n\n if (6 === r[0] && a.label < i[1]) {\n a.label = i[1], i = r;\n break;\n }\n\n if (i && a.label < i[2]) {\n a.label = i[2], a.ops.push(r);\n break;\n }\n\n i[2] && a.ops.pop(), a.trys.pop();\n continue;\n }\n\n r = t.call(e, a);\n } catch (e) {\n r = [6, e], o = 0;\n } finally {\n n = i = 0;\n }\n }\n\n if (5 & r[0]) throw r[1];\n return {\n value: r[0] ? r[1] : void 0,\n done: !0\n };\n }([r, s]);\n };\n }\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.dispatchCustomKeyEventFromIframe = t.removeCustomKeyboardListener = t.addCustomKeyboardListener = void 0;\n\n var i = \"Escape\",\n r = function r(e, _r) {\n return n(void 0, void 0, void 0, function () {\n return o(this, function (n) {\n return e.code === i && \"function\" == typeof _r && (_r(), t.removeCustomKeyboardListener()), [2];\n });\n });\n };\n\n t.addCustomKeyboardListener = function (e) {\n return window.document.addEventListener(\"keydown\", function (t) {\n return r(t, e);\n });\n }, t.removeCustomKeyboardListener = function () {\n return window.document.removeEventListener(\"keydown\", r);\n }, t.dispatchCustomKeyEventFromIframe = function (e) {\n \"form-close\" === e.data.type && window.document.dispatchEvent(new KeyboardEvent(\"keydown\", {\n code: i\n }));\n };\n },\n 256: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.triggerIframeRedraw = void 0, t.triggerIframeRedraw = function () {\n this.style.transform = \"translateZ(0)\";\n };\n },\n 939: function _(e, t, n) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.getTextColor = void 0;\n var o = n(938);\n\n t.getTextColor = function (e) {\n if (!e) return \"#FFFFFF\";\n var t = e.startsWith(\"#\") ? o.hexRgb(e) : function (e) {\n var t = {\n red: 0,\n green: 0,\n blue: 0\n },\n n = e.match(/\\d+/g);\n return n && (t.red = parseInt(n[0], 10), t.green = parseInt(n[0], 10), t.blue = parseInt(n[0], 10)), t;\n }(e),\n n = t.red,\n i = t.green,\n r = t.blue;\n return Math.round((299 * n + 587 * i + 114 * r) / 1e3) > 125 ? \"#000000\" : \"#FFFFFF\";\n };\n },\n 698: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.getTransitiveSearchParams = void 0, t.getTransitiveSearchParams = function (e) {\n var t = new URL(window.location.href),\n n = {};\n return e && e.length > 0 && e.forEach(function (e) {\n t.searchParams.has(e) && (n[e] = t.searchParams.get(e));\n }), n;\n };\n },\n 252: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.hasDom = void 0, t.hasDom = function () {\n return \"undefined\" != typeof document && \"undefined\" != typeof window;\n };\n },\n 938: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.hexRgb = void 0;\n var n = new RegExp(\"[^#a-f\\\\d]\", \"gi\"),\n o = new RegExp(\"^#?[a-f\\\\d]{3}[a-f\\\\d]?$|^#?[a-f\\\\d]{6}([a-f\\\\d]{2})?$\", \"i\");\n\n t.hexRgb = function (e) {\n if (\"string\" != typeof e || n.test(e) || !o.test(e)) throw new TypeError(\"Expected a valid hex string\");\n 8 === (e = e.replace(/^#/, \"\")).length && (e = e.slice(0, 6)), 4 === e.length && (e = e.slice(0, 3)), 3 === e.length && (e = e[0] + e[0] + e[1] + e[1] + e[2] + e[2]);\n var t = Number.parseInt(e, 16);\n return {\n red: t >> 16,\n green: t >> 8 & 255,\n blue: 255 & t\n };\n };\n },\n 71: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.includeCss = void 0, t.includeCss = function (e) {\n var t = function (e) {\n return \"https://embed.typeform.com/next/css/\" + e;\n }(e);\n\n if (!document.querySelector('link[href=\"' + t + '\"]')) {\n var n = document.createElement(\"link\");\n n.rel = \"stylesheet\", n.href = t, document.head.append(n);\n }\n };\n },\n 747: function _(e, t, n) {\n var o = this && this.__createBinding || (Object.create ? function (e, t, n, o) {\n void 0 === o && (o = n), Object.defineProperty(e, o, {\n enumerable: !0,\n get: function get() {\n return t[n];\n }\n });\n } : function (e, t, n, o) {\n void 0 === o && (o = n), e[o] = t[n];\n }),\n i = this && this.__exportStar || function (e, t) {\n for (var n in e) {\n \"default\" === n || Object.prototype.hasOwnProperty.call(t, n) || o(t, e, n);\n }\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), i(n(626), t), i(n(339), t), i(n(252), t), i(n(71), t), i(n(346), t), i(n(377), t), i(n(563), t), i(n(527), t), i(n(533), t), i(n(451), t), i(n(972), t), i(n(748), t), i(n(392), t), i(n(939), t), i(n(917), t), i(n(987), t);\n },\n 346: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.isDefined = void 0, t.isDefined = function (e) {\n return null != e;\n };\n },\n 987: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.isVisible = t.isInPage = t.isOpen = void 0, t.isOpen = function (e) {\n return t.isInPage(e) && t.isVisible(e);\n }, t.isInPage = function (e) {\n return !!e.parentNode;\n }, t.isVisible = function (e) {\n return \"none\" !== e.style.display;\n };\n },\n 917: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.lazyInitialize = void 0, t.lazyInitialize = function (e, t) {\n var n = new IntersectionObserver(function (e) {\n e.forEach(function (e) {\n e.isIntersecting && (t(), n.unobserve(e.target));\n });\n });\n n.observe(e);\n };\n },\n 377: function _(e, t) {\n var n = this && this.__assign || function () {\n return (n = Object.assign || function (e) {\n for (var t, n = 1, o = arguments.length; n < o; n++) {\n for (var i in t = arguments[n]) {\n Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]);\n }\n }\n\n return e;\n }).apply(this, arguments);\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.loadOptionsFromAttributes = t.transformAttributeValue = t.camelCaseToKebabCase = void 0, t.camelCaseToKebabCase = function (e) {\n return e.split(\"\").map(function (e, t) {\n return e.toUpperCase() === e ? (0 !== t ? \"-\" : \"\") + e.toLowerCase() : e;\n }).join(\"\");\n };\n\n var o = function o(e) {\n return e || void 0;\n },\n i = function i(e) {\n return \"\" === e || \"yes\" === e || \"true\" === e;\n },\n r = function r(e) {\n var t = e ? parseInt(e, 10) : NaN;\n return isNaN(t) ? void 0 : t;\n },\n a = \"%ESCAPED_COMMA%\";\n\n t.transformAttributeValue = function (e, t) {\n var s, u;\n\n switch (t) {\n case \"string\":\n return o(e);\n\n case \"boolean\":\n return i(e);\n\n case \"integer\":\n return r(e);\n\n case \"function\":\n return function (e) {\n var t = e && e in window ? window[e] : void 0;\n return \"function\" == typeof t ? t : void 0;\n }(e);\n\n case \"array\":\n return function (e) {\n if (e) return e.replace(/\\s/g, \"\").replace(/\\\\,/g, a).split(\",\").filter(function (e) {\n return !!e;\n }).map(function (e) {\n return e.replace(a, \",\");\n });\n }(e);\n\n case \"record\":\n return function (e) {\n if (e) return e.replace(/\\\\,/g, a).split(\",\").filter(function (e) {\n return !!e;\n }).map(function (e) {\n return e.replace(a, \",\");\n }).reduce(function (e, t) {\n var o,\n i = t.match(/^([^=]+)=(.*)$/);\n\n if (i) {\n var r = i[1],\n a = i[2];\n return n(n({}, e), ((o = {})[r.trim()] = a, o));\n }\n\n return e;\n }, {});\n }(e);\n\n case \"integerOrBoolean\":\n return null !== (s = r(e)) && void 0 !== s ? s : i(e);\n\n case \"stringOrBoolean\":\n return null !== (u = o(e)) && void 0 !== u ? u : i(e);\n\n default:\n throw new Error(\"Invalid attribute transformation \" + t);\n }\n }, t.loadOptionsFromAttributes = function (e, o) {\n return Object.keys(o).reduce(function (i, r) {\n var a;\n return n(n({}, i), ((a = {})[r] = t.transformAttributeValue(e.getAttribute(\"data-tf-\" + t.camelCaseToKebabCase(r)), o[r]), a));\n }, {});\n };\n },\n 563: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.isFullscreen = t.isMobile = t.isBigScreen = void 0, t.isBigScreen = function () {\n return window.screen.width >= 1024 && window.screen.height >= 768;\n }, t.isMobile = function () {\n return /mobile|tablet|android/i.test(navigator.userAgent.toLowerCase());\n }, t.isFullscreen = function () {\n return t.isMobile() && !t.isBigScreen();\n };\n },\n 527: function _(e, t, n) {\n var o = this && this.__assign || function () {\n return (o = Object.assign || function (e) {\n for (var t, n = 1, o = arguments.length; n < o; n++) {\n for (var i in t = arguments[n]) {\n Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]);\n }\n }\n\n return e;\n }).apply(this, arguments);\n };\n\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.removeUndefinedKeys = void 0;\n var i = n(346);\n\n t.removeUndefinedKeys = function (e) {\n return Object.entries(e).filter(function (e) {\n var t = e[1];\n return i.isDefined(t);\n }).reduce(function (e, t) {\n var n,\n i = t[0],\n r = t[1];\n return o(o({}, e), ((n = {})[i] = r, n));\n }, {});\n };\n },\n 748: function _(e, t, n) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.setAutoClose = void 0;\n var o = n(554);\n\n t.setAutoClose = function (e, t, n) {\n if (t && n) {\n var i = \"number\" == typeof t ? t : 0;\n window.addEventListener(\"message\", o.getFormSubmitHandler(e, function () {\n return setTimeout(n, i);\n }));\n }\n };\n },\n 533: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.setElementSize = void 0, t.setElementSize = function (e, t) {\n var n = t.width,\n o = t.height;\n return n && (e.style.width = n + \"px\"), o && (e.style.height = o + \"px\"), e;\n };\n },\n 392: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.setupGaInstance = t.sendGaIdMessage = void 0, t.sendGaIdMessage = function (e, t, n) {\n var o = {\n embedId: e,\n gaClientId: t\n };\n setTimeout(function () {\n n && n.contentWindow && n.contentWindow.postMessage({\n type: \"ga-client-id\",\n data: o\n }, \"*\");\n }, 0);\n };\n\n var n = function n(e) {\n console.error(e);\n };\n\n t.setupGaInstance = function (e, o, i) {\n try {\n var r = window[window.GoogleAnalyticsObject],\n a = \"string\" == typeof i ? i : void 0,\n s = function (e, t) {\n return t ? e.find(function (e) {\n return e.get(\"trackingId\") === t;\n }) : e[0];\n }(r.getAll(), a);\n\n s ? t.sendGaIdMessage(o, s.get(\"clientId\"), e) : n(\"Whoops! You enabled the shareGaInstance feature in your typeform embed but the tracker with ID \" + a + \" was not found. Make sure to include Google Analytics Javascript code before the Typeform Embed Javascript code in your page and use correct tracker ID. \");\n } catch (e) {\n n(\"Whoops! You enabled the shareGaInstance feature in your typeform embed but the Google Analytics object has not been found. Make sure to include Google Analytics Javascript code before the Typeform Embed Javascript code in your page. \"), n(e);\n }\n };\n },\n 451: function _(e, t) {\n Object.defineProperty(t, \"__esModule\", {\n value: !0\n }), t.unmountElement = void 0, t.unmountElement = function (e) {\n var t;\n null === (t = e.parentNode) || void 0 === t || t.removeChild(e);\n };\n }\n },\n t = {};\n return function n(o) {\n if (t[o]) return t[o].exports;\n var i = t[o] = {\n exports: {}\n };\n return e[o].call(i.exports, i, i.exports, n), i.exports;\n }(920);\n }();\n },\n 297: function _(t) {\n \"use strict\";\n\n t.exports = e;\n }\n },\n n = {};\n\n function o(e) {\n if (n[e]) return n[e].exports;\n var i = n[e] = {\n exports: {}\n };\n return t[e].call(i.exports, i, i.exports, o), i.exports;\n }\n\n return o.o = function (e, t) {\n return Object.prototype.hasOwnProperty.call(e, t);\n }, o.r = function (e) {\n \"undefined\" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, {\n value: \"Module\"\n }), Object.defineProperty(e, \"__esModule\", {\n value: !0\n });\n }, o(582);\n }();\n});","/*!\n Copyright (c) 2018 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n\n/* global define */\n(function () {\n 'use strict';\n\n var hasOwn = {}.hasOwnProperty;\n\n function classNames() {\n var classes = [];\n\n for (var i = 0; i < arguments.length; i++) {\n var arg = arguments[i];\n if (!arg) continue;\n var argType = typeof arg;\n\n if (argType === 'string' || argType === 'number') {\n classes.push(arg);\n } else if (Array.isArray(arg)) {\n if (arg.length) {\n var inner = classNames.apply(null, arg);\n\n if (inner) {\n classes.push(inner);\n }\n }\n } else if (argType === 'object') {\n if (arg.toString === Object.prototype.toString) {\n for (var key in arg) {\n if (hasOwn.call(arg, key) && arg[key]) {\n classes.push(key);\n }\n }\n } else {\n classes.push(arg.toString());\n }\n }\n }\n\n return classes.join(' ');\n }\n\n if (typeof module !== 'undefined' && module.exports) {\n classNames.default = classNames;\n module.exports = classNames;\n } else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n // register as 'classnames', consistent with npm package name\n define('classnames', [], function () {\n return classNames;\n });\n } else {\n window.classNames = classNames;\n }\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/** Used as references for various `Number` constants. */\n\nvar NAN = 0 / 0;\n/** `Object#toString` result references. */\n\nvar symbolTag = '[object Symbol]';\n/** Used to match leading and trailing whitespace. */\n\nvar reTrim = /^\\s+|\\s+$/g;\n/** Used to detect bad signed hexadecimal string values. */\n\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n/** Used to detect binary string values. */\n\nvar reIsBinary = /^0b[01]+$/i;\n/** Used to detect octal string values. */\n\nvar reIsOctal = /^0o[0-7]+$/i;\n/** Built-in method references without a dependency on `root`. */\n\nvar freeParseInt = parseInt;\n/** Detect free variable `global` from Node.js. */\n\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n/** Detect free variable `self`. */\n\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n/** Used as a reference to the global object. */\n\nvar root = freeGlobal || freeSelf || Function('return this')();\n/** Used for built-in method references. */\n\nvar objectProto = Object.prototype;\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\n\nvar objectToString = objectProto.toString;\n/* Built-in method references for those with the same name as other `lodash` methods. */\n\nvar nativeMax = Math.max,\n nativeMin = Math.min;\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 */\n\nvar now = function now() {\n return root.Date.now();\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 */\n\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\n wait = toNumber(wait) || 0;\n\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 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; // Start the timer for the trailing edge.\n\n timerId = setTimeout(timerExpired, wait); // Invoke the leading edge.\n\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 return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime; // 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\n return lastCallTime === undefined || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait;\n }\n\n function timerExpired() {\n var time = now();\n\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n } // Restart the timer.\n\n\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined; // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\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 lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n\n if (maxing) {\n // Handle invocations in a tight loop.\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n\n return result;\n }\n\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\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 */\n\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\n if (isObject(options)) {\n leading = 'leading' in options ? !!options.leading : leading;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n return debounce(func, wait, {\n 'leading': leading,\n 'maxWait': wait,\n 'trailing': trailing\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 */\n\n\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\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 */\n\n\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\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 */\n\n\nfunction isSymbol(value) {\n return typeof value == 'symbol' || isObjectLike(value) && objectToString.call(value) == symbolTag;\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 */\n\n\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n\n if (isSymbol(value)) {\n return NAN;\n }\n\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? other + '' : other;\n }\n\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n\n value = value.replace(reTrim, '');\n var isBinary = reIsBinary.test(value);\n return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value;\n}\n\nmodule.exports = throttle;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = all;\n\nvar _createChainableTypeChecker = require('./utils/createChainableTypeChecker');\n\nvar _createChainableTypeChecker2 = _interopRequireDefault(_createChainableTypeChecker);\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\nfunction all() {\n for (var _len = arguments.length, validators = Array(_len), _key = 0; _key < _len; _key++) {\n validators[_key] = arguments[_key];\n }\n\n function allPropTypes() {\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n var error = null;\n validators.forEach(function (validator) {\n if (error != null) {\n return;\n }\n\n var result = validator.apply(undefined, args);\n\n if (result != null) {\n error = result;\n }\n });\n return error;\n }\n\n return (0, _createChainableTypeChecker2.default)(allPropTypes);\n}\n\nmodule.exports = exports['default'];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = createChainableTypeChecker;\n/**\n * Copyright 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n// Mostly taken from ReactPropTypes.\n\nfunction createChainableTypeChecker(validate) {\n function checkType(isRequired, props, propName, componentName, location, propFullName) {\n var componentNameSafe = componentName || '<>';\n var propFullNameSafe = propFullName || propName;\n\n if (props[propName] == null) {\n if (isRequired) {\n return new Error('Required ' + location + ' `' + propFullNameSafe + '` was not specified ' + ('in `' + componentNameSafe + '`.'));\n }\n\n return null;\n }\n\n for (var _len = arguments.length, args = Array(_len > 6 ? _len - 6 : 0), _key = 6; _key < _len; _key++) {\n args[_key - 6] = arguments[_key];\n }\n\n return validate.apply(undefined, [props, propName, componentNameSafe, location, propFullNameSafe].concat(args));\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n return chainedCheckType;\n}\n\nmodule.exports = exports['default'];","/* global Map:readonly, Set:readonly, ArrayBuffer:readonly */\nvar hasElementType = typeof Element !== 'undefined';\nvar hasMap = typeof Map === 'function';\nvar hasSet = typeof Set === 'function';\nvar hasArrayBuffer = typeof ArrayBuffer === 'function' && !!ArrayBuffer.isView; // Note: We **don't** need `envHasBigInt64Array` in fde es6/index.js\n\nfunction equal(a, b) {\n // START: fast-deep-equal es6/index.js 3.1.1\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n var length, i, keys;\n\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n\n for (i = length; i-- !== 0;) {\n if (!equal(a[i], b[i])) return false;\n }\n\n return true;\n } // START: Modifications:\n // 1. Extra `has &&` helpers in initial condition allow es6 code\n // to co-exist with es5.\n // 2. Replace `for of` with es5 compliant iteration using `for`.\n // Basically, take:\n //\n // ```js\n // for (i of a.entries())\n // if (!b.has(i[0])) return false;\n // ```\n //\n // ... and convert to:\n //\n // ```js\n // it = a.entries();\n // while (!(i = it.next()).done)\n // if (!b.has(i.value[0])) return false;\n // ```\n //\n // **Note**: `i` access switches to `i.value`.\n\n\n var it;\n\n if (hasMap && a instanceof Map && b instanceof Map) {\n if (a.size !== b.size) return false;\n it = a.entries();\n\n while (!(i = it.next()).done) {\n if (!b.has(i.value[0])) return false;\n }\n\n it = a.entries();\n\n while (!(i = it.next()).done) {\n if (!equal(i.value[1], b.get(i.value[0]))) return false;\n }\n\n return true;\n }\n\n if (hasSet && a instanceof Set && b instanceof Set) {\n if (a.size !== b.size) return false;\n it = a.entries();\n\n while (!(i = it.next()).done) {\n if (!b.has(i.value[0])) return false;\n }\n\n return true;\n } // END: Modifications\n\n\n if (hasArrayBuffer && ArrayBuffer.isView(a) && ArrayBuffer.isView(b)) {\n length = a.length;\n if (length != b.length) return false;\n\n for (i = length; i-- !== 0;) {\n if (a[i] !== b[i]) return false;\n }\n\n return true;\n }\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;) {\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n } // END: fast-deep-equal\n // START: react-fast-compare\n // custom handling for DOM elements\n\n\n if (hasElementType && a instanceof Element) return false; // custom handling for React/Preact\n\n for (i = length; i-- !== 0;) {\n if ((keys[i] === '_owner' || keys[i] === '__v' || keys[i] === '__o') && a.$$typeof) {\n // React-specific: avoid traversing React elements' _owner\n // Preact-specific: avoid traversing Preact elements' __v and __o\n // __v = $_original / $_vnode\n // __o = $_owner\n // These properties contain circular references and are not needed when\n // comparing the actual elements (and not their owners)\n // .$$typeof and ._store on just reasonable markers of elements\n continue;\n } // all other properties should be traversed as usual\n\n\n if (!equal(a[keys[i]], b[keys[i]])) return false;\n } // END: react-fast-compare\n // START: fast-deep-equal\n\n\n return true;\n }\n\n return a !== a && b !== b;\n} // end fast-deep-equal\n\n\nmodule.exports = function isEqual(a, b) {\n try {\n return equal(a, b);\n } catch (error) {\n if ((error.message || '').match(/stack|recursion/i)) {\n // warn on circular references, don't crash\n // browsers give this different errors name and messages:\n // chrome/safari: \"RangeError\", \"Maximum call stack size exceeded\"\n // firefox: \"InternalError\", too much recursion\"\n // edge: \"Error\", \"Out of stack space\"\n console.warn('react-fast-compare cannot handle circular refs');\n return false;\n } // some other error. we should definitely know about these\n\n\n throw error;\n }\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\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) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n}\n\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('input', this.props, this.props.children);\n }\n }]);\n\n return ButtonElement;\n}(_react2.default.Component);\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) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\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) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n}\n\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; // Remove `parentBindings` from props\n\n\n var newProps = _extends({}, this.props);\n\n if (newProps.parentBindings) {\n delete newProps.parentBindings;\n }\n\n return _react2.default.createElement('div', _extends({}, newProps, {\n ref: function ref(el) {\n _this2.props.parentBindings.domNode = el;\n }\n }), this.props.children);\n }\n }]);\n\n return ElementWrapper;\n}(_react2.default.Component);\n\n;\nElementWrapper.propTypes = {\n name: _propTypes2.default.string,\n id: _propTypes2.default.string\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) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n}\n\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('a', _this.props, _this.props.children);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n return LinkElement;\n}(_react2.default.Component);\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) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\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 = {\n Link: _Link2.default,\n Button: _Button2.default,\n Element: _Element2.default,\n scroller: _scroller2.default,\n Events: _scrollEvents2.default,\n scrollSpy: _scrollSpy2.default,\n animateScroll: _animateScroll2.default,\n ScrollLink: _scrollLink2.default,\n ScrollElement: _scrollElement2.default,\n Helpers: _Helpers2.default\n};","\"use strict\";\n/* DEPRECATED */\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n}\n\nvar React = require('react');\n\nvar ReactDOM = require('react-dom');\n\nvar utils = require('./utils');\n\nvar scrollSpy = require('./scroll-spy');\n\nvar defaultScroller = require('./scroller');\n\nvar PropTypes = require('prop-types');\n\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};\nvar Helpers = {\n Scroll: function Scroll(Component, customScroller) {\n console.warn(\"Helpers.Scroll is deprecated since v1.7.0\");\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\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 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 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 /*\r\n * give the posibility to override onClick\r\n */\n if (_this2.props.onClick) {\n _this2.props.onClick(event);\n }\n /*\r\n * dont bubble the navigation\r\n */\n\n\n if (event.stopPropagation) event.stopPropagation();\n if (event.preventDefault) event.preventDefault();\n /*\r\n * do the magic!\r\n */\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\n _this2.setState({\n active: false\n });\n }\n };\n\n this.spyHandler = function (y) {\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\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({\n active: false\n });\n\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 _this2.props.hashSpy && scrollHash.changeHash(to);\n\n if (_this2.props.spy) {\n _this2.setState({\n active: true\n });\n\n _this2.props.onSetActive && _this2.props.onSetActive(to);\n }\n\n return scrollSpy.updateStates();\n }\n };\n };\n\n ;\n Scroll.propTypes = protoTypes;\n Scroll.defaultProps = {\n offset: 0\n };\n return Scroll;\n },\n Element: function Element(Component) {\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\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\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, {\n parentBindings: this.childBindings\n }));\n }\n }]);\n\n return Element;\n }(React.Component);\n\n ;\n Element.propTypes = {\n name: PropTypes.string,\n id: PropTypes.string\n };\n return Element;\n }\n};\nmodule.exports = Helpers;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\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) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n/*\r\n * Gets the easing type from the smooth prop within options.\r\n */\n\n\nvar getAnimationType = function getAnimationType(options) {\n return _smooth2.default[options.smooth] || _smooth2.default.defaultEasing;\n};\n/*\r\n * Function helper\r\n */\n\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 */\n\n\nvar currentWindowProperties = function currentWindowProperties() {\n if (typeof window !== 'undefined') {\n return window.requestAnimationFrame || window.webkitRequestAnimationFrame;\n }\n};\n/*\r\n * Helper function to never extend 60fps on the webpage.\r\n */\n\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 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\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\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\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 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\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 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; // Cancel on specific events\n\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\n return;\n }\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 data.percent = data.progress >= data.duration ? 1 : easing(data.progress / data.duration);\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 window.clearTimeout(options.data.delayTimeout);\n\n _cancelEvents2.default.subscribe(function () {\n options.data.cancel = true;\n });\n\n setContainer(options);\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\n return;\n }\n\n options.data.delta = Math.round(options.data.targetPosition - options.data.startPosition);\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 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\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\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'];\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 */\n\nvar addPassiveEventListener = exports.addPassiveEventListener = function addPassiveEventListener(target, eventName, listener) {\n var supportsPassiveOption = function () {\n var supportsPassiveOption = false;\n\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\n return supportsPassiveOption;\n }();\n\n target.addEventListener(eventName, listener, supportsPassiveOption ? {\n passive: true\n } : 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) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\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) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n}\n\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\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\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, {\n parentBindings: this.childBindings\n }));\n }\n }]);\n\n return Element;\n }(_react2.default.Component);\n\n ;\n Element.propTypes = {\n name: _propTypes2.default.string,\n id: _propTypes2.default.string\n };\n return Element;\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nvar Events = {\n registered: {},\n scrollEvent: {\n register: function register(evtName, callback) {\n Events.registered[evtName] = callback;\n },\n remove: function remove(evtName) {\n Events.registered[evtName] = null;\n }\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) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\nvar scrollHash = {\n mountFlag: false,\n initialized: false,\n scroller: null,\n containers: {},\n mount: function mount(scroller) {\n this.scroller = scroller;\n this.handleHashChange = this.handleHashChange.bind(this);\n window.addEventListener('hashchange', this.handleHashChange);\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\n if (hash) {\n window.setTimeout(function () {\n _this.scrollTo(hash, true);\n\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\n if (element && (isInit || to !== scroller.getActiveLink())) {\n var container = this.containers[to] || document;\n scroller.scrollTo(to, {\n container: container\n });\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};\nexports.default = scrollHash;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\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) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n}\n\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 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\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 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 /*\r\n * give the posibility to override onClick\r\n */\n if (_this2.props.onClick) {\n _this2.props.onClick(event);\n }\n /*\r\n * dont bubble the navigation\r\n */\n\n\n if (event.stopPropagation) event.stopPropagation();\n if (event.preventDefault) event.preventDefault();\n /*\r\n * do the magic!\r\n */\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 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\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\n containerTop = _containerCords.top;\n }\n\n if (!element || _this2.props.isDynamic) {\n element = scroller.get(to);\n\n if (!element) {\n return;\n }\n\n var _cords = element.getBoundingClientRect();\n\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({\n active: false\n });\n\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({\n active: true\n });\n\n _this2.props.onSetActive && _this2.props.onSetActive(to, element);\n }\n }\n };\n };\n\n ;\n Link.propTypes = protoTypes;\n Link.defaultProps = {\n 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) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n} // The eventHandler will execute at a rate of 15fps by default\n\n\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 spyCallbacks: [],\n spySetState: [],\n scrollSpyContainers: [],\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 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 update: function update() {\n return scrollSpy.scrollSpyContainers.forEach(function (c) {\n return scrollSpy.scrollHandler(c);\n });\n }\n};\nexports.default = scrollSpy;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\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) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\nvar __mapped = {};\n\nvar __activeLink = void 0;\n\nexports.default = {\n unmount: function unmount() {\n __mapped = {};\n },\n register: function register(name, element) {\n __mapped[name] = element;\n },\n unregister: function unregister(name) {\n delete __mapped[name];\n },\n get: function get(name) {\n return __mapped[name] || document.getElementById(name) || document.getElementsByName(name)[0] || document.getElementsByClassName(name)[0];\n },\n setActiveLink: function setActiveLink(link) {\n return __activeLink = link;\n },\n getActiveLink: function getActiveLink() {\n return __activeLink;\n },\n scrollTo: function scrollTo(to, props) {\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, {\n absolute: false\n });\n var containerId = props.containerId;\n var container = props.container;\n var containerElement = void 0;\n\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 var horizontal = props.horizontal;\n var scrollOffset = _utils2.default.scrollOffset(containerElement, target, horizontal) + (props.offset || 0);\n /*\r\n * if animate is not provided just scroll into the view\r\n */\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 /*\r\n * Animate scrolling\r\n */\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\n return 1 - Math.pow((1 - x) * 2, 2) / 2;\n },\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});\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 {\n offsetTop: offsetTop,\n offsetParent: currentOffsetParent\n };\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 } // 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 // 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 // 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\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\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};","'use strict';\n\nfunction _interopDefault(ex) {\n return ex && typeof ex === 'object' && 'default' in ex ? ex['default'] : ex;\n}\n\nvar React = require('react');\n\nvar React__default = _interopDefault(React);\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}\n\nvar canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n\nfunction withSideEffect(reducePropsToState, handleStateChangeOnClient, mapStateOnServer) {\n if (typeof reducePropsToState !== 'function') {\n throw new Error('Expected reducePropsToState to be a function.');\n }\n\n if (typeof handleStateChangeOnClient !== 'function') {\n throw new Error('Expected handleStateChangeOnClient to be a function.');\n }\n\n if (typeof mapStateOnServer !== 'undefined' && typeof mapStateOnServer !== 'function') {\n throw new Error('Expected mapStateOnServer to either be undefined or a function.');\n }\n\n function getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n }\n\n return function wrap(WrappedComponent) {\n if (typeof WrappedComponent !== 'function') {\n throw new Error('Expected WrappedComponent to be a React component.');\n }\n\n var mountedInstances = [];\n var state;\n\n function emitChange() {\n state = reducePropsToState(mountedInstances.map(function (instance) {\n return instance.props;\n }));\n\n if (SideEffect.canUseDOM) {\n handleStateChangeOnClient(state);\n } else if (mapStateOnServer) {\n state = mapStateOnServer(state);\n }\n }\n\n var SideEffect = /*#__PURE__*/function (_PureComponent) {\n _inheritsLoose(SideEffect, _PureComponent);\n\n function SideEffect() {\n return _PureComponent.apply(this, arguments) || this;\n } // Try to use displayName of wrapped component\n // Expose canUseDOM so tests can monkeypatch it\n\n\n SideEffect.peek = function peek() {\n return state;\n };\n\n SideEffect.rewind = function rewind() {\n if (SideEffect.canUseDOM) {\n throw new Error('You may only call rewind() on the server. Call peek() to read the current state.');\n }\n\n var recordedState = state;\n state = undefined;\n mountedInstances = [];\n return recordedState;\n };\n\n var _proto = SideEffect.prototype;\n\n _proto.UNSAFE_componentWillMount = function UNSAFE_componentWillMount() {\n mountedInstances.push(this);\n emitChange();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n emitChange();\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n var index = mountedInstances.indexOf(this);\n mountedInstances.splice(index, 1);\n emitChange();\n };\n\n _proto.render = function render() {\n return /*#__PURE__*/React__default.createElement(WrappedComponent, this.props);\n };\n\n return SideEffect;\n }(React.PureComponent);\n\n _defineProperty(SideEffect, \"displayName\", \"SideEffect(\" + getDisplayName(WrappedComponent) + \")\");\n\n _defineProperty(SideEffect, \"canUseDOM\", canUseDOM);\n\n return SideEffect;\n };\n}\n\nmodule.exports = withSideEffect;","import React from \"react\";\nimport { StaticQuery, graphql } from \"gatsby\";\nimport { GatsbyImage } from \"gatsby-plugin-image\";\n\nconst Image = ({ fileName, alt, ...restProps }) => (\n {\n const image = images.edges.find((n) => n.node.relativePath.includes(fileName));\n\n if (!image) {\n return null;\n }\n\n const imageData = image.node.childImageSharp.gatsbyImageData;\n return ;\n }}\n />\n);\n\nImage.defaultProps = {\n alt: null,\n};\n\nexport default Image;\n","import PropTypes from 'prop-types';\nimport withSideEffect from 'react-side-effect';\nimport isEqual from 'react-fast-compare';\nimport React from 'react';\nimport objectAssign from 'object-assign';\nvar ATTRIBUTE_NAMES = {\n BODY: \"bodyAttributes\",\n HTML: \"htmlAttributes\",\n TITLE: \"titleAttributes\"\n};\nvar TAG_NAMES = {\n BASE: \"base\",\n BODY: \"body\",\n HEAD: \"head\",\n HTML: \"html\",\n LINK: \"link\",\n META: \"meta\",\n NOSCRIPT: \"noscript\",\n SCRIPT: \"script\",\n STYLE: \"style\",\n TITLE: \"title\"\n};\nvar VALID_TAG_NAMES = Object.keys(TAG_NAMES).map(function (name) {\n return TAG_NAMES[name];\n});\nvar TAG_PROPERTIES = {\n CHARSET: \"charset\",\n CSS_TEXT: \"cssText\",\n HREF: \"href\",\n HTTPEQUIV: \"http-equiv\",\n INNER_HTML: \"innerHTML\",\n ITEM_PROP: \"itemprop\",\n NAME: \"name\",\n PROPERTY: \"property\",\n REL: \"rel\",\n SRC: \"src\",\n TARGET: \"target\"\n};\nvar REACT_TAG_MAP = {\n accesskey: \"accessKey\",\n charset: \"charSet\",\n class: \"className\",\n contenteditable: \"contentEditable\",\n contextmenu: \"contextMenu\",\n \"http-equiv\": \"httpEquiv\",\n itemprop: \"itemProp\",\n tabindex: \"tabIndex\"\n};\nvar HELMET_PROPS = {\n DEFAULT_TITLE: \"defaultTitle\",\n DEFER: \"defer\",\n ENCODE_SPECIAL_CHARACTERS: \"encodeSpecialCharacters\",\n ON_CHANGE_CLIENT_STATE: \"onChangeClientState\",\n TITLE_TEMPLATE: \"titleTemplate\"\n};\nvar HTML_TAG_MAP = Object.keys(REACT_TAG_MAP).reduce(function (obj, key) {\n obj[REACT_TAG_MAP[key]] = key;\n return obj;\n}, {});\nvar SELF_CLOSING_TAGS = [TAG_NAMES.NOSCRIPT, TAG_NAMES.SCRIPT, TAG_NAMES.STYLE];\nvar HELMET_ATTRIBUTE = \"data-react-helmet\";\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n};\n\nvar classCallCheck = function classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\nvar inherits = function inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n};\n\nvar objectWithoutProperties = function objectWithoutProperties(obj, keys) {\n var target = {};\n\n for (var i in obj) {\n if (keys.indexOf(i) >= 0) continue;\n if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;\n target[i] = obj[i];\n }\n\n return target;\n};\n\nvar possibleConstructorReturn = function possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n};\n\nvar encodeSpecialCharacters = function encodeSpecialCharacters(str) {\n var encode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (encode === false) {\n return String(str);\n }\n\n return String(str).replace(/&/g, \"&\").replace(//g, \">\").replace(/\"/g, \""\").replace(/'/g, \"'\");\n};\n\nvar getTitleFromPropsList = function getTitleFromPropsList(propsList) {\n var innermostTitle = getInnermostProperty(propsList, TAG_NAMES.TITLE);\n var innermostTemplate = getInnermostProperty(propsList, HELMET_PROPS.TITLE_TEMPLATE);\n\n if (innermostTemplate && innermostTitle) {\n // use function arg to avoid need to escape $ characters\n return innermostTemplate.replace(/%s/g, function () {\n return Array.isArray(innermostTitle) ? innermostTitle.join(\"\") : innermostTitle;\n });\n }\n\n var innermostDefaultTitle = getInnermostProperty(propsList, HELMET_PROPS.DEFAULT_TITLE);\n return innermostTitle || innermostDefaultTitle || undefined;\n};\n\nvar getOnChangeClientState = function getOnChangeClientState(propsList) {\n return getInnermostProperty(propsList, HELMET_PROPS.ON_CHANGE_CLIENT_STATE) || function () {};\n};\n\nvar getAttributesFromPropsList = function getAttributesFromPropsList(tagType, propsList) {\n return propsList.filter(function (props) {\n return typeof props[tagType] !== \"undefined\";\n }).map(function (props) {\n return props[tagType];\n }).reduce(function (tagAttrs, current) {\n return _extends({}, tagAttrs, current);\n }, {});\n};\n\nvar getBaseTagFromPropsList = function getBaseTagFromPropsList(primaryAttributes, propsList) {\n return propsList.filter(function (props) {\n return typeof props[TAG_NAMES.BASE] !== \"undefined\";\n }).map(function (props) {\n return props[TAG_NAMES.BASE];\n }).reverse().reduce(function (innermostBaseTag, tag) {\n if (!innermostBaseTag.length) {\n var keys = Object.keys(tag);\n\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var lowerCaseAttributeKey = attributeKey.toLowerCase();\n\n if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && tag[lowerCaseAttributeKey]) {\n return innermostBaseTag.concat(tag);\n }\n }\n }\n\n return innermostBaseTag;\n }, []);\n};\n\nvar getTagsFromPropsList = function getTagsFromPropsList(tagName, primaryAttributes, propsList) {\n // Calculate list of tags, giving priority innermost component (end of the propslist)\n var approvedSeenTags = {};\n return propsList.filter(function (props) {\n if (Array.isArray(props[tagName])) {\n return true;\n }\n\n if (typeof props[tagName] !== \"undefined\") {\n warn(\"Helmet: \" + tagName + \" should be of type \\\"Array\\\". Instead found type \\\"\" + _typeof(props[tagName]) + \"\\\"\");\n }\n\n return false;\n }).map(function (props) {\n return props[tagName];\n }).reverse().reduce(function (approvedTags, instanceTags) {\n var instanceSeenTags = {};\n instanceTags.filter(function (tag) {\n var primaryAttributeKey = void 0;\n var keys = Object.keys(tag);\n\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var lowerCaseAttributeKey = attributeKey.toLowerCase(); // Special rule with link tags, since rel and href are both primary tags, rel takes priority\n\n if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && !(primaryAttributeKey === TAG_PROPERTIES.REL && tag[primaryAttributeKey].toLowerCase() === \"canonical\") && !(lowerCaseAttributeKey === TAG_PROPERTIES.REL && tag[lowerCaseAttributeKey].toLowerCase() === \"stylesheet\")) {\n primaryAttributeKey = lowerCaseAttributeKey;\n } // Special case for innerHTML which doesn't work lowercased\n\n\n if (primaryAttributes.indexOf(attributeKey) !== -1 && (attributeKey === TAG_PROPERTIES.INNER_HTML || attributeKey === TAG_PROPERTIES.CSS_TEXT || attributeKey === TAG_PROPERTIES.ITEM_PROP)) {\n primaryAttributeKey = attributeKey;\n }\n }\n\n if (!primaryAttributeKey || !tag[primaryAttributeKey]) {\n return false;\n }\n\n var value = tag[primaryAttributeKey].toLowerCase();\n\n if (!approvedSeenTags[primaryAttributeKey]) {\n approvedSeenTags[primaryAttributeKey] = {};\n }\n\n if (!instanceSeenTags[primaryAttributeKey]) {\n instanceSeenTags[primaryAttributeKey] = {};\n }\n\n if (!approvedSeenTags[primaryAttributeKey][value]) {\n instanceSeenTags[primaryAttributeKey][value] = true;\n return true;\n }\n\n return false;\n }).reverse().forEach(function (tag) {\n return approvedTags.push(tag);\n }); // Update seen tags with tags from this instance\n\n var keys = Object.keys(instanceSeenTags);\n\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var tagUnion = objectAssign({}, approvedSeenTags[attributeKey], instanceSeenTags[attributeKey]);\n approvedSeenTags[attributeKey] = tagUnion;\n }\n\n return approvedTags;\n }, []).reverse();\n};\n\nvar getInnermostProperty = function getInnermostProperty(propsList, property) {\n for (var i = propsList.length - 1; i >= 0; i--) {\n var props = propsList[i];\n\n if (props.hasOwnProperty(property)) {\n return props[property];\n }\n }\n\n return null;\n};\n\nvar reducePropsToState = function reducePropsToState(propsList) {\n return {\n baseTag: getBaseTagFromPropsList([TAG_PROPERTIES.HREF, TAG_PROPERTIES.TARGET], propsList),\n bodyAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.BODY, propsList),\n defer: getInnermostProperty(propsList, HELMET_PROPS.DEFER),\n encode: getInnermostProperty(propsList, HELMET_PROPS.ENCODE_SPECIAL_CHARACTERS),\n htmlAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.HTML, propsList),\n linkTags: getTagsFromPropsList(TAG_NAMES.LINK, [TAG_PROPERTIES.REL, TAG_PROPERTIES.HREF], propsList),\n metaTags: getTagsFromPropsList(TAG_NAMES.META, [TAG_PROPERTIES.NAME, TAG_PROPERTIES.CHARSET, TAG_PROPERTIES.HTTPEQUIV, TAG_PROPERTIES.PROPERTY, TAG_PROPERTIES.ITEM_PROP], propsList),\n noscriptTags: getTagsFromPropsList(TAG_NAMES.NOSCRIPT, [TAG_PROPERTIES.INNER_HTML], propsList),\n onChangeClientState: getOnChangeClientState(propsList),\n scriptTags: getTagsFromPropsList(TAG_NAMES.SCRIPT, [TAG_PROPERTIES.SRC, TAG_PROPERTIES.INNER_HTML], propsList),\n styleTags: getTagsFromPropsList(TAG_NAMES.STYLE, [TAG_PROPERTIES.CSS_TEXT], propsList),\n title: getTitleFromPropsList(propsList),\n titleAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.TITLE, propsList)\n };\n};\n\nvar rafPolyfill = function () {\n var clock = Date.now();\n return function (callback) {\n var currentTime = Date.now();\n\n if (currentTime - clock > 16) {\n clock = currentTime;\n callback(currentTime);\n } else {\n setTimeout(function () {\n rafPolyfill(callback);\n }, 0);\n }\n };\n}();\n\nvar cafPolyfill = function cafPolyfill(id) {\n return clearTimeout(id);\n};\n\nvar requestAnimationFrame = typeof window !== \"undefined\" ? window.requestAnimationFrame && window.requestAnimationFrame.bind(window) || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || rafPolyfill : global.requestAnimationFrame || rafPolyfill;\nvar cancelAnimationFrame = typeof window !== \"undefined\" ? window.cancelAnimationFrame || window.webkitCancelAnimationFrame || window.mozCancelAnimationFrame || cafPolyfill : global.cancelAnimationFrame || cafPolyfill;\n\nvar warn = function warn(msg) {\n return console && typeof console.warn === \"function\" && console.warn(msg);\n};\n\nvar _helmetCallback = null;\n\nvar handleClientStateChange = function handleClientStateChange(newState) {\n if (_helmetCallback) {\n cancelAnimationFrame(_helmetCallback);\n }\n\n if (newState.defer) {\n _helmetCallback = requestAnimationFrame(function () {\n commitTagChanges(newState, function () {\n _helmetCallback = null;\n });\n });\n } else {\n commitTagChanges(newState);\n _helmetCallback = null;\n }\n};\n\nvar commitTagChanges = function commitTagChanges(newState, cb) {\n var baseTag = newState.baseTag,\n bodyAttributes = newState.bodyAttributes,\n htmlAttributes = newState.htmlAttributes,\n linkTags = newState.linkTags,\n metaTags = newState.metaTags,\n noscriptTags = newState.noscriptTags,\n onChangeClientState = newState.onChangeClientState,\n scriptTags = newState.scriptTags,\n styleTags = newState.styleTags,\n title = newState.title,\n titleAttributes = newState.titleAttributes;\n updateAttributes(TAG_NAMES.BODY, bodyAttributes);\n updateAttributes(TAG_NAMES.HTML, htmlAttributes);\n updateTitle(title, titleAttributes);\n var tagUpdates = {\n baseTag: updateTags(TAG_NAMES.BASE, baseTag),\n linkTags: updateTags(TAG_NAMES.LINK, linkTags),\n metaTags: updateTags(TAG_NAMES.META, metaTags),\n noscriptTags: updateTags(TAG_NAMES.NOSCRIPT, noscriptTags),\n scriptTags: updateTags(TAG_NAMES.SCRIPT, scriptTags),\n styleTags: updateTags(TAG_NAMES.STYLE, styleTags)\n };\n var addedTags = {};\n var removedTags = {};\n Object.keys(tagUpdates).forEach(function (tagType) {\n var _tagUpdates$tagType = tagUpdates[tagType],\n newTags = _tagUpdates$tagType.newTags,\n oldTags = _tagUpdates$tagType.oldTags;\n\n if (newTags.length) {\n addedTags[tagType] = newTags;\n }\n\n if (oldTags.length) {\n removedTags[tagType] = tagUpdates[tagType].oldTags;\n }\n });\n cb && cb();\n onChangeClientState(newState, addedTags, removedTags);\n};\n\nvar flattenArray = function flattenArray(possibleArray) {\n return Array.isArray(possibleArray) ? possibleArray.join(\"\") : possibleArray;\n};\n\nvar updateTitle = function updateTitle(title, attributes) {\n if (typeof title !== \"undefined\" && document.title !== title) {\n document.title = flattenArray(title);\n }\n\n updateAttributes(TAG_NAMES.TITLE, attributes);\n};\n\nvar updateAttributes = function updateAttributes(tagName, attributes) {\n var elementTag = document.getElementsByTagName(tagName)[0];\n\n if (!elementTag) {\n return;\n }\n\n var helmetAttributeString = elementTag.getAttribute(HELMET_ATTRIBUTE);\n var helmetAttributes = helmetAttributeString ? helmetAttributeString.split(\",\") : [];\n var attributesToRemove = [].concat(helmetAttributes);\n var attributeKeys = Object.keys(attributes);\n\n for (var i = 0; i < attributeKeys.length; i++) {\n var attribute = attributeKeys[i];\n var value = attributes[attribute] || \"\";\n\n if (elementTag.getAttribute(attribute) !== value) {\n elementTag.setAttribute(attribute, value);\n }\n\n if (helmetAttributes.indexOf(attribute) === -1) {\n helmetAttributes.push(attribute);\n }\n\n var indexToSave = attributesToRemove.indexOf(attribute);\n\n if (indexToSave !== -1) {\n attributesToRemove.splice(indexToSave, 1);\n }\n }\n\n for (var _i = attributesToRemove.length - 1; _i >= 0; _i--) {\n elementTag.removeAttribute(attributesToRemove[_i]);\n }\n\n if (helmetAttributes.length === attributesToRemove.length) {\n elementTag.removeAttribute(HELMET_ATTRIBUTE);\n } else if (elementTag.getAttribute(HELMET_ATTRIBUTE) !== attributeKeys.join(\",\")) {\n elementTag.setAttribute(HELMET_ATTRIBUTE, attributeKeys.join(\",\"));\n }\n};\n\nvar updateTags = function updateTags(type, tags) {\n var headElement = document.head || document.querySelector(TAG_NAMES.HEAD);\n var tagNodes = headElement.querySelectorAll(type + \"[\" + HELMET_ATTRIBUTE + \"]\");\n var oldTags = Array.prototype.slice.call(tagNodes);\n var newTags = [];\n var indexToDelete = void 0;\n\n if (tags && tags.length) {\n tags.forEach(function (tag) {\n var newElement = document.createElement(type);\n\n for (var attribute in tag) {\n if (tag.hasOwnProperty(attribute)) {\n if (attribute === TAG_PROPERTIES.INNER_HTML) {\n newElement.innerHTML = tag.innerHTML;\n } else if (attribute === TAG_PROPERTIES.CSS_TEXT) {\n if (newElement.styleSheet) {\n newElement.styleSheet.cssText = tag.cssText;\n } else {\n newElement.appendChild(document.createTextNode(tag.cssText));\n }\n } else {\n var value = typeof tag[attribute] === \"undefined\" ? \"\" : tag[attribute];\n newElement.setAttribute(attribute, value);\n }\n }\n }\n\n newElement.setAttribute(HELMET_ATTRIBUTE, \"true\"); // Remove a duplicate tag from domTagstoRemove, so it isn't cleared.\n\n if (oldTags.some(function (existingTag, index) {\n indexToDelete = index;\n return newElement.isEqualNode(existingTag);\n })) {\n oldTags.splice(indexToDelete, 1);\n } else {\n newTags.push(newElement);\n }\n });\n }\n\n oldTags.forEach(function (tag) {\n return tag.parentNode.removeChild(tag);\n });\n newTags.forEach(function (tag) {\n return headElement.appendChild(tag);\n });\n return {\n oldTags: oldTags,\n newTags: newTags\n };\n};\n\nvar generateElementAttributesAsString = function generateElementAttributesAsString(attributes) {\n return Object.keys(attributes).reduce(function (str, key) {\n var attr = typeof attributes[key] !== \"undefined\" ? key + \"=\\\"\" + attributes[key] + \"\\\"\" : \"\" + key;\n return str ? str + \" \" + attr : attr;\n }, \"\");\n};\n\nvar generateTitleAsString = function generateTitleAsString(type, title, attributes, encode) {\n var attributeString = generateElementAttributesAsString(attributes);\n var flattenedTitle = flattenArray(title);\n return attributeString ? \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\" \" + attributeString + \">\" + encodeSpecialCharacters(flattenedTitle, encode) + \"\" : \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\">\" + encodeSpecialCharacters(flattenedTitle, encode) + \"\";\n};\n\nvar generateTagsAsString = function generateTagsAsString(type, tags, encode) {\n return tags.reduce(function (str, tag) {\n var attributeHtml = Object.keys(tag).filter(function (attribute) {\n return !(attribute === TAG_PROPERTIES.INNER_HTML || attribute === TAG_PROPERTIES.CSS_TEXT);\n }).reduce(function (string, attribute) {\n var attr = typeof tag[attribute] === \"undefined\" ? attribute : attribute + \"=\\\"\" + encodeSpecialCharacters(tag[attribute], encode) + \"\\\"\";\n return string ? string + \" \" + attr : attr;\n }, \"\");\n var tagContent = tag.innerHTML || tag.cssText || \"\";\n var isSelfClosing = SELF_CLOSING_TAGS.indexOf(type) === -1;\n return str + \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\" \" + attributeHtml + (isSelfClosing ? \"/>\" : \">\" + tagContent + \"\");\n }, \"\");\n};\n\nvar convertElementAttributestoReactProps = function convertElementAttributestoReactProps(attributes) {\n var initProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return Object.keys(attributes).reduce(function (obj, key) {\n obj[REACT_TAG_MAP[key] || key] = attributes[key];\n return obj;\n }, initProps);\n};\n\nvar convertReactPropstoHtmlAttributes = function convertReactPropstoHtmlAttributes(props) {\n var initAttributes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return Object.keys(props).reduce(function (obj, key) {\n obj[HTML_TAG_MAP[key] || key] = props[key];\n return obj;\n }, initAttributes);\n};\n\nvar generateTitleAsReactComponent = function generateTitleAsReactComponent(type, title, attributes) {\n var _initProps; // assigning into an array to define toString function on it\n\n\n var initProps = (_initProps = {\n key: title\n }, _initProps[HELMET_ATTRIBUTE] = true, _initProps);\n var props = convertElementAttributestoReactProps(attributes, initProps);\n return [React.createElement(TAG_NAMES.TITLE, props, title)];\n};\n\nvar generateTagsAsReactComponent = function generateTagsAsReactComponent(type, tags) {\n return tags.map(function (tag, i) {\n var _mappedTag;\n\n var mappedTag = (_mappedTag = {\n key: i\n }, _mappedTag[HELMET_ATTRIBUTE] = true, _mappedTag);\n Object.keys(tag).forEach(function (attribute) {\n var mappedAttribute = REACT_TAG_MAP[attribute] || attribute;\n\n if (mappedAttribute === TAG_PROPERTIES.INNER_HTML || mappedAttribute === TAG_PROPERTIES.CSS_TEXT) {\n var content = tag.innerHTML || tag.cssText;\n mappedTag.dangerouslySetInnerHTML = {\n __html: content\n };\n } else {\n mappedTag[mappedAttribute] = tag[attribute];\n }\n });\n return React.createElement(type, mappedTag);\n });\n};\n\nvar getMethodsForTag = function getMethodsForTag(type, tags, encode) {\n switch (type) {\n case TAG_NAMES.TITLE:\n return {\n toComponent: function toComponent() {\n return generateTitleAsReactComponent(type, tags.title, tags.titleAttributes, encode);\n },\n toString: function toString() {\n return generateTitleAsString(type, tags.title, tags.titleAttributes, encode);\n }\n };\n\n case ATTRIBUTE_NAMES.BODY:\n case ATTRIBUTE_NAMES.HTML:\n return {\n toComponent: function toComponent() {\n return convertElementAttributestoReactProps(tags);\n },\n toString: function toString() {\n return generateElementAttributesAsString(tags);\n }\n };\n\n default:\n return {\n toComponent: function toComponent() {\n return generateTagsAsReactComponent(type, tags);\n },\n toString: function toString() {\n return generateTagsAsString(type, tags, encode);\n }\n };\n }\n};\n\nvar mapStateOnServer = function mapStateOnServer(_ref) {\n var baseTag = _ref.baseTag,\n bodyAttributes = _ref.bodyAttributes,\n encode = _ref.encode,\n htmlAttributes = _ref.htmlAttributes,\n linkTags = _ref.linkTags,\n metaTags = _ref.metaTags,\n noscriptTags = _ref.noscriptTags,\n scriptTags = _ref.scriptTags,\n styleTags = _ref.styleTags,\n _ref$title = _ref.title,\n title = _ref$title === undefined ? \"\" : _ref$title,\n titleAttributes = _ref.titleAttributes;\n return {\n base: getMethodsForTag(TAG_NAMES.BASE, baseTag, encode),\n bodyAttributes: getMethodsForTag(ATTRIBUTE_NAMES.BODY, bodyAttributes, encode),\n htmlAttributes: getMethodsForTag(ATTRIBUTE_NAMES.HTML, htmlAttributes, encode),\n link: getMethodsForTag(TAG_NAMES.LINK, linkTags, encode),\n meta: getMethodsForTag(TAG_NAMES.META, metaTags, encode),\n noscript: getMethodsForTag(TAG_NAMES.NOSCRIPT, noscriptTags, encode),\n script: getMethodsForTag(TAG_NAMES.SCRIPT, scriptTags, encode),\n style: getMethodsForTag(TAG_NAMES.STYLE, styleTags, encode),\n title: getMethodsForTag(TAG_NAMES.TITLE, {\n title: title,\n titleAttributes: titleAttributes\n }, encode)\n };\n};\n\nvar Helmet = function Helmet(Component) {\n var _class, _temp;\n\n return _temp = _class = function (_React$Component) {\n inherits(HelmetWrapper, _React$Component);\n\n function HelmetWrapper() {\n classCallCheck(this, HelmetWrapper);\n return possibleConstructorReturn(this, _React$Component.apply(this, arguments));\n }\n\n HelmetWrapper.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps) {\n return !isEqual(this.props, nextProps);\n };\n\n HelmetWrapper.prototype.mapNestedChildrenToProps = function mapNestedChildrenToProps(child, nestedChildren) {\n if (!nestedChildren) {\n return null;\n }\n\n switch (child.type) {\n case TAG_NAMES.SCRIPT:\n case TAG_NAMES.NOSCRIPT:\n return {\n innerHTML: nestedChildren\n };\n\n case TAG_NAMES.STYLE:\n return {\n cssText: nestedChildren\n };\n }\n\n throw new Error(\"<\" + child.type + \" /> elements are self-closing and can not contain children. Refer to our API for more information.\");\n };\n\n HelmetWrapper.prototype.flattenArrayTypeChildren = function flattenArrayTypeChildren(_ref) {\n var _babelHelpers$extends;\n\n var child = _ref.child,\n arrayTypeChildren = _ref.arrayTypeChildren,\n newChildProps = _ref.newChildProps,\n nestedChildren = _ref.nestedChildren;\n return _extends({}, arrayTypeChildren, (_babelHelpers$extends = {}, _babelHelpers$extends[child.type] = [].concat(arrayTypeChildren[child.type] || [], [_extends({}, newChildProps, this.mapNestedChildrenToProps(child, nestedChildren))]), _babelHelpers$extends));\n };\n\n HelmetWrapper.prototype.mapObjectTypeChildren = function mapObjectTypeChildren(_ref2) {\n var _babelHelpers$extends2, _babelHelpers$extends3;\n\n var child = _ref2.child,\n newProps = _ref2.newProps,\n newChildProps = _ref2.newChildProps,\n nestedChildren = _ref2.nestedChildren;\n\n switch (child.type) {\n case TAG_NAMES.TITLE:\n return _extends({}, newProps, (_babelHelpers$extends2 = {}, _babelHelpers$extends2[child.type] = nestedChildren, _babelHelpers$extends2.titleAttributes = _extends({}, newChildProps), _babelHelpers$extends2));\n\n case TAG_NAMES.BODY:\n return _extends({}, newProps, {\n bodyAttributes: _extends({}, newChildProps)\n });\n\n case TAG_NAMES.HTML:\n return _extends({}, newProps, {\n htmlAttributes: _extends({}, newChildProps)\n });\n }\n\n return _extends({}, newProps, (_babelHelpers$extends3 = {}, _babelHelpers$extends3[child.type] = _extends({}, newChildProps), _babelHelpers$extends3));\n };\n\n HelmetWrapper.prototype.mapArrayTypeChildrenToProps = function mapArrayTypeChildrenToProps(arrayTypeChildren, newProps) {\n var newFlattenedProps = _extends({}, newProps);\n\n Object.keys(arrayTypeChildren).forEach(function (arrayChildName) {\n var _babelHelpers$extends4;\n\n newFlattenedProps = _extends({}, newFlattenedProps, (_babelHelpers$extends4 = {}, _babelHelpers$extends4[arrayChildName] = arrayTypeChildren[arrayChildName], _babelHelpers$extends4));\n });\n return newFlattenedProps;\n };\n\n HelmetWrapper.prototype.warnOnInvalidChildren = function warnOnInvalidChildren(child, nestedChildren) {\n if (process.env.NODE_ENV !== \"production\") {\n if (!VALID_TAG_NAMES.some(function (name) {\n return child.type === name;\n })) {\n if (typeof child.type === \"function\") {\n return warn(\"You may be attempting to nest components within each other, which is not allowed. Refer to our API for more information.\");\n }\n\n return warn(\"Only elements types \" + VALID_TAG_NAMES.join(\", \") + \" are allowed. Helmet does not support rendering <\" + child.type + \"> elements. Refer to our API for more information.\");\n }\n\n if (nestedChildren && typeof nestedChildren !== \"string\" && (!Array.isArray(nestedChildren) || nestedChildren.some(function (nestedChild) {\n return typeof nestedChild !== \"string\";\n }))) {\n throw new Error(\"Helmet expects a string as a child of <\" + child.type + \">. Did you forget to wrap your children in braces? ( <\" + child.type + \">{``} ) Refer to our API for more information.\");\n }\n }\n\n return true;\n };\n\n HelmetWrapper.prototype.mapChildrenToProps = function mapChildrenToProps(children, newProps) {\n var _this2 = this;\n\n var arrayTypeChildren = {};\n React.Children.forEach(children, function (child) {\n if (!child || !child.props) {\n return;\n }\n\n var _child$props = child.props,\n nestedChildren = _child$props.children,\n childProps = objectWithoutProperties(_child$props, [\"children\"]);\n var newChildProps = convertReactPropstoHtmlAttributes(childProps);\n\n _this2.warnOnInvalidChildren(child, nestedChildren);\n\n switch (child.type) {\n case TAG_NAMES.LINK:\n case TAG_NAMES.META:\n case TAG_NAMES.NOSCRIPT:\n case TAG_NAMES.SCRIPT:\n case TAG_NAMES.STYLE:\n arrayTypeChildren = _this2.flattenArrayTypeChildren({\n child: child,\n arrayTypeChildren: arrayTypeChildren,\n newChildProps: newChildProps,\n nestedChildren: nestedChildren\n });\n break;\n\n default:\n newProps = _this2.mapObjectTypeChildren({\n child: child,\n newProps: newProps,\n newChildProps: newChildProps,\n nestedChildren: nestedChildren\n });\n break;\n }\n });\n newProps = this.mapArrayTypeChildrenToProps(arrayTypeChildren, newProps);\n return newProps;\n };\n\n HelmetWrapper.prototype.render = function render() {\n var _props = this.props,\n children = _props.children,\n props = objectWithoutProperties(_props, [\"children\"]);\n\n var newProps = _extends({}, props);\n\n if (children) {\n newProps = this.mapChildrenToProps(children, newProps);\n }\n\n return React.createElement(Component, newProps);\n };\n\n createClass(HelmetWrapper, null, [{\n key: \"canUseDOM\",\n // Component.peek comes from react-side-effect:\n // For testing, you may use a static peek() method available on the returned component.\n // It lets you get the current state without resetting the mounted instance stack.\n // Don’t use it for anything other than testing.\n\n /**\n * @param {Object} base: {\"target\": \"_blank\", \"href\": \"http://mysite.com/\"}\n * @param {Object} bodyAttributes: {\"className\": \"root\"}\n * @param {String} defaultTitle: \"Default Title\"\n * @param {Boolean} defer: true\n * @param {Boolean} encodeSpecialCharacters: true\n * @param {Object} htmlAttributes: {\"lang\": \"en\", \"amp\": undefined}\n * @param {Array} link: [{\"rel\": \"canonical\", \"href\": \"http://mysite.com/example\"}]\n * @param {Array} meta: [{\"name\": \"description\", \"content\": \"Test description\"}]\n * @param {Array} noscript: [{\"innerHTML\": \" console.log(newState)\"\n * @param {Array} script: [{\"type\": \"text/javascript\", \"src\": \"http://mysite.com/js/test.js\"}]\n * @param {Array} style: [{\"type\": \"text/css\", \"cssText\": \"div { display: block; color: blue; }\"}]\n * @param {String} title: \"Title\"\n * @param {Object} titleAttributes: {\"itemprop\": \"name\"}\n * @param {String} titleTemplate: \"MySite.com - %s\"\n */\n set: function set$$1(canUseDOM) {\n Component.canUseDOM = canUseDOM;\n }\n }]);\n return HelmetWrapper;\n }(React.Component), _class.propTypes = {\n base: PropTypes.object,\n bodyAttributes: PropTypes.object,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n defaultTitle: PropTypes.string,\n defer: PropTypes.bool,\n encodeSpecialCharacters: PropTypes.bool,\n htmlAttributes: PropTypes.object,\n link: PropTypes.arrayOf(PropTypes.object),\n meta: PropTypes.arrayOf(PropTypes.object),\n noscript: PropTypes.arrayOf(PropTypes.object),\n onChangeClientState: PropTypes.func,\n script: PropTypes.arrayOf(PropTypes.object),\n style: PropTypes.arrayOf(PropTypes.object),\n title: PropTypes.string,\n titleAttributes: PropTypes.object,\n titleTemplate: PropTypes.string\n }, _class.defaultProps = {\n defer: true,\n encodeSpecialCharacters: true\n }, _class.peek = Component.peek, _class.rewind = function () {\n var mappedState = Component.rewind();\n\n if (!mappedState) {\n // provide fallback if mappedState is undefined\n mappedState = mapStateOnServer({\n baseTag: [],\n bodyAttributes: {},\n encodeSpecialCharacters: true,\n htmlAttributes: {},\n linkTags: [],\n metaTags: [],\n noscriptTags: [],\n scriptTags: [],\n styleTags: [],\n title: \"\",\n titleAttributes: {}\n });\n }\n\n return mappedState;\n }, _temp;\n};\n\nvar NullComponent = function NullComponent() {\n return null;\n};\n\nvar HelmetSideEffects = withSideEffect(reducePropsToState, handleClientStateChange, mapStateOnServer)(NullComponent);\nvar HelmetExport = Helmet(HelmetSideEffects);\nHelmetExport.renderStatic = HelmetExport.rewind;\nexport default HelmetExport;\nexport { HelmetExport as Helmet };","/**\n * SEO component that queries for data with\n * Gatsby's useStaticQuery React hook\n *\n * See: https://www.gatsbyjs.org/docs/use-static-query/\n */\n\nimport React from \"react\";\nimport { Helmet } from \"react-helmet\";\nimport { useStaticQuery, graphql } from \"gatsby\";\n\nconst SEO = ({ lang, description, meta, keywords, title }) => {\n const { site } = useStaticQuery(\n graphql`\n query {\n site {\n siteMetadata {\n title\n description\n author\n }\n }\n }\n `\n );\n\n const metaDescription = description || site.siteMetadata.description;\n\n return (\n 0\n ? {\n name: `keywords`,\n content: keywords.join(`, `)\n }\n : []\n )\n .concat(meta)}\n />\n );\n};\n\nSEO.defaultProps = {\n lang: \"en\",\n meta: [],\n keywords: [],\n description: \"\"\n};\n\nexport default SEO;\n","import React from \"react\";\nimport Image from \"../../components/image\";\nimport { Link as ScrollLink } from \"react-scroll\";\nimport { Link } from \"gatsby\";\n\nconst Footer = ({ frontmatter }) => {\n\n const copyright = 'Copyright © VA Software Solutions'\n const imageFileName = 'logo/logo-white.png'\n\n return (\n
\n
\n
\n
\n
\n
\n \"logo\"\n
\n
\n {/*

\n long established fact that a reader will be distracted by the readable content by\n the readable content established fact that\n

*/}\n
\n
\n
\n
\n
    \n
  • \n Home\n
  • \n
  • \n {/* About us */}\n About us\n
  • \n {/*
  • \n Our services\n
  • \n
  • \n Careers\n
  • */}\n
  • \n Contact us\n
  • \n
\n
\n
\n
\n
\n
\n {/*

Some patience for the modern market in the software world

\n

21 Aug 2017 By Admin

*/}\n
\n
\n
\n
\n
\n
\n

\n +44 118 228 0486\n

\n
\n \n\n

Reading, United Kingdom

\n

Sofia, Bulgaria

\n

Varna, Bulgaria

\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
{ copyright } {new Date().getFullYear()}
\n
\n
\n
\n
\n
\n );\n};\n\nexport default Footer;\n","export default function _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}","import invariant from 'invariant';\n\nvar noop = function noop() {};\n\nfunction readOnlyPropType(handler, name) {\n return function (props, propName) {\n if (props[propName] !== undefined) {\n if (!props[handler]) {\n return new Error(\"You have provided a `\" + propName + \"` prop to `\" + name + \"` \" + (\"without an `\" + handler + \"` handler prop. This will render a read-only field. \") + (\"If the field should be mutable use `\" + defaultKey(propName) + \"`. \") + (\"Otherwise, set `\" + handler + \"`.\"));\n }\n }\n };\n}\n\nexport function uncontrolledPropTypes(controlledValues, displayName) {\n var propTypes = {};\n Object.keys(controlledValues).forEach(function (prop) {\n // add default propTypes for folks that use runtime checks\n propTypes[defaultKey(prop)] = noop;\n\n if (process.env.NODE_ENV !== 'production') {\n var handler = controlledValues[prop];\n !(typeof handler === 'string' && handler.trim().length) ? process.env.NODE_ENV !== \"production\" ? invariant(false, 'Uncontrollable - [%s]: the prop `%s` needs a valid handler key name in order to make it uncontrollable', displayName, prop) : invariant(false) : void 0;\n propTypes[prop] = readOnlyPropType(handler, displayName);\n }\n });\n return propTypes;\n}\nexport function isProp(props, prop) {\n return props[prop] !== undefined;\n}\nexport function defaultKey(key) {\n return 'default' + key.charAt(0).toUpperCase() + key.substr(1);\n}\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\nexport function canAcceptRef(component) {\n return !!component && (typeof component !== 'function' || component.prototype && component.prototype.isReactComponent);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\n\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n\n return typeof key === \"symbol\" ? key : String(key);\n}\n\nfunction _toPrimitive(input, hint) {\n if (typeof input !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (typeof res !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n\n return (hint === \"string\" ? String : Number)(input);\n}\n\nimport { useCallback, useRef, useState } from 'react';\nimport * as Utils from './utils';\n\nfunction useUncontrolledProp(propValue, defaultValue, handler) {\n var wasPropRef = useRef(propValue !== undefined);\n\n var _useState = useState(defaultValue),\n stateValue = _useState[0],\n setState = _useState[1];\n\n var isProp = propValue !== undefined;\n var wasProp = wasPropRef.current;\n wasPropRef.current = isProp;\n /**\n * If a prop switches from controlled to Uncontrolled\n * reset its value to the defaultValue\n */\n\n if (!isProp && wasProp && stateValue !== defaultValue) {\n setState(defaultValue);\n }\n\n return [isProp ? propValue : stateValue, useCallback(function (value) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (handler) handler.apply(void 0, [value].concat(args));\n setState(value);\n }, [handler])];\n}\n\nexport { useUncontrolledProp };\nexport default function useUncontrolled(props, config) {\n return Object.keys(config).reduce(function (result, fieldName) {\n var _extends2;\n\n var _ref = result,\n defaultValue = _ref[Utils.defaultKey(fieldName)],\n propsValue = _ref[fieldName],\n rest = _objectWithoutPropertiesLoose(_ref, [Utils.defaultKey(fieldName), fieldName].map(_toPropertyKey));\n\n var handlerName = config[fieldName];\n\n var _useUncontrolledProp = useUncontrolledProp(propsValue, defaultValue, props[handlerName]),\n value = _useUncontrolledProp[0],\n handler = _useUncontrolledProp[1];\n\n return _extends({}, rest, (_extends2 = {}, _extends2[fieldName] = value, _extends2[handlerName] = handler, _extends2));\n }, props);\n}","var rHyphen = /-(.)/g;\nexport default function camelize(string) {\n return string.replace(rHyphen, function (_, chr) {\n return chr.toUpperCase();\n });\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport React, { useContext, useMemo } from 'react';\nvar ThemeContext = /*#__PURE__*/React.createContext({});\nvar Consumer = ThemeContext.Consumer,\n Provider = ThemeContext.Provider;\n\nfunction ThemeProvider(_ref) {\n var prefixes = _ref.prefixes,\n children = _ref.children;\n var copiedPrefixes = useMemo(function () {\n return _extends({}, prefixes);\n }, [prefixes]);\n return /*#__PURE__*/React.createElement(Provider, {\n value: copiedPrefixes\n }, children);\n}\n\nexport function useBootstrapPrefix(prefix, defaultPrefix) {\n var prefixes = useContext(ThemeContext);\n return prefix || prefixes[defaultPrefix] || defaultPrefix;\n}\n\nfunction createBootstrapComponent(Component, opts) {\n if (typeof opts === 'string') opts = {\n prefix: opts\n };\n var isClassy = Component.prototype && Component.prototype.isReactComponent; // If it's a functional component make sure we don't break it with a ref\n\n var _opts = opts,\n prefix = _opts.prefix,\n _opts$forwardRefAs = _opts.forwardRefAs,\n forwardRefAs = _opts$forwardRefAs === void 0 ? isClassy ? 'ref' : 'innerRef' : _opts$forwardRefAs;\n var Wrapped = /*#__PURE__*/React.forwardRef(function (_ref2, ref) {\n var props = _extends({}, _ref2);\n\n props[forwardRefAs] = ref;\n var bsPrefix = useBootstrapPrefix(props.bsPrefix, prefix);\n return /*#__PURE__*/React.createElement(Component, _extends({}, props, {\n bsPrefix: bsPrefix\n }));\n });\n Wrapped.displayName = \"Bootstrap(\" + (Component.displayName || Component.name) + \")\";\n return Wrapped;\n}\n\nexport { createBootstrapComponent, Consumer as ThemeConsumer };\nexport default ThemeProvider;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nvar _excluded = [\"className\", \"bsPrefix\", \"as\"];\nimport classNames from 'classnames';\nimport camelize from 'dom-helpers/camelize';\nimport React from 'react';\nimport { useBootstrapPrefix } from './ThemeProvider';\n\nvar pascalCase = function pascalCase(str) {\n return str[0].toUpperCase() + camelize(str).slice(1);\n}; // TODO: emstricten & fix the typing here! `createWithBsPrefix...`\n\n\nexport default function createWithBsPrefix(prefix, _temp) {\n var _ref = _temp === void 0 ? {} : _temp,\n _ref$displayName = _ref.displayName,\n displayName = _ref$displayName === void 0 ? pascalCase(prefix) : _ref$displayName,\n Component = _ref.Component,\n defaultProps = _ref.defaultProps;\n\n var BsComponent = /*#__PURE__*/React.forwardRef(function (_ref2, ref) {\n var className = _ref2.className,\n bsPrefix = _ref2.bsPrefix,\n _ref2$as = _ref2.as,\n Tag = _ref2$as === void 0 ? Component || 'div' : _ref2$as,\n props = _objectWithoutPropertiesLoose(_ref2, _excluded);\n\n var resolvedPrefix = useBootstrapPrefix(bsPrefix, prefix);\n return /*#__PURE__*/React.createElement(Tag, _extends({\n ref: ref,\n className: classNames(className, resolvedPrefix)\n }, props));\n });\n BsComponent.defaultProps = defaultProps;\n BsComponent.displayName = displayName;\n return BsComponent;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nvar _excluded = [\"bsPrefix\", \"className\", \"as\"];\nimport classNames from 'classnames';\nimport React from 'react';\nimport { useBootstrapPrefix } from './ThemeProvider';\nvar NavbarBrand = /*#__PURE__*/React.forwardRef(function (_ref, ref) {\n var bsPrefix = _ref.bsPrefix,\n className = _ref.className,\n as = _ref.as,\n props = _objectWithoutPropertiesLoose(_ref, _excluded);\n\n bsPrefix = useBootstrapPrefix(bsPrefix, 'navbar-brand');\n var Component = as || (props.href ? 'a' : 'span');\n return /*#__PURE__*/React.createElement(Component, _extends({}, props, {\n ref: ref,\n className: classNames(className, bsPrefix)\n }));\n});\nNavbarBrand.displayName = 'NavbarBrand';\nexport default NavbarBrand;","import ownerDocument from './ownerDocument';\n/**\n * Returns the owner window of a given element.\n * \n * @param node the element\n */\n\nexport default function ownerWindow(node) {\n var doc = ownerDocument(node);\n return doc && doc.defaultView || window;\n}","/**\n * Returns the owner document of a given element.\n * \n * @param node the element\n */\nexport default function ownerDocument(node) {\n return node && node.ownerDocument || document;\n}","var rUpper = /([A-Z])/g;\nexport default function hyphenate(string) {\n return string.replace(rUpper, '-$1').toLowerCase();\n}","/**\n * Copyright 2013-2014, Facebook, Inc.\n * All rights reserved.\n * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/hyphenateStyleName.js\n */\nimport hyphenate from './hyphenate';\nvar msPattern = /^ms-/;\nexport default function hyphenateStyleName(string) {\n return hyphenate(string).replace(msPattern, '-ms-');\n}","var supportedTransforms = /^((translate|rotate|scale)(X|Y|Z|3d)?|matrix(3d)?|perspective|skew(X|Y)?)$/i;\nexport default function isTransform(value) {\n return !!(value && supportedTransforms.test(value));\n}","import getComputedStyle from './getComputedStyle';\nimport hyphenate from './hyphenateStyle';\nimport isTransform from './isTransform';\n\nfunction style(node, property) {\n var css = '';\n var transforms = '';\n\n if (typeof property === 'string') {\n return node.style.getPropertyValue(hyphenate(property)) || getComputedStyle(node).getPropertyValue(hyphenate(property));\n }\n\n Object.keys(property).forEach(function (key) {\n var value = property[key];\n\n if (!value && value !== 0) {\n node.style.removeProperty(hyphenate(key));\n } else if (isTransform(key)) {\n transforms += key + \"(\" + value + \") \";\n } else {\n css += hyphenate(key) + \": \" + value + \";\";\n }\n });\n\n if (transforms) {\n css += \"transform: \" + transforms + \";\";\n }\n\n node.style.cssText += \";\" + css;\n}\n\nexport default style;","import ownerWindow from './ownerWindow';\n/**\n * Returns one or all computed style properties of an element.\n * \n * @param node the element\n * @param psuedoElement the style property\n */\n\nexport default function getComputedStyle(node, psuedoElement) {\n return ownerWindow(node).getComputedStyle(node, psuedoElement);\n}","export default {\n disabled: false\n};","import React from 'react';\nexport default React.createContext(null);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport config from './config';\nimport { timeoutsShape } from './utils/PropTypes';\nimport TransitionGroupContext from './TransitionGroupContext';\nexport var UNMOUNTED = 'unmounted';\nexport var EXITED = 'exited';\nexport var ENTERING = 'entering';\nexport var ENTERED = 'entered';\nexport var EXITING = 'exiting';\n/**\n * The Transition component lets you describe a transition from one component\n * state to another _over time_ with a simple declarative API. Most commonly\n * it's used to animate the mounting and unmounting of a component, but can also\n * be used to describe in-place transition states as well.\n *\n * ---\n *\n * **Note**: `Transition` is a platform-agnostic base component. If you're using\n * transitions in CSS, you'll probably want to use\n * [`CSSTransition`](https://reactcommunity.org/react-transition-group/css-transition)\n * instead. It inherits all the features of `Transition`, but contains\n * additional features necessary to play nice with CSS transitions (hence the\n * name of the component).\n *\n * ---\n *\n * By default the `Transition` component does not alter the behavior of the\n * component it renders, it only tracks \"enter\" and \"exit\" states for the\n * components. It's up to you to give meaning and effect to those states. For\n * example we can add styles to a component when it enters or exits:\n *\n * ```jsx\n * import { Transition } from 'react-transition-group';\n *\n * const duration = 300;\n *\n * const defaultStyle = {\n * transition: `opacity ${duration}ms ease-in-out`,\n * opacity: 0,\n * }\n *\n * const transitionStyles = {\n * entering: { opacity: 1 },\n * entered: { opacity: 1 },\n * exiting: { opacity: 0 },\n * exited: { opacity: 0 },\n * };\n *\n * const Fade = ({ in: inProp }) => (\n * \n * {state => (\n *
\n * I'm a fade Transition!\n *
\n * )}\n *
\n * );\n * ```\n *\n * There are 4 main states a Transition can be in:\n * - `'entering'`\n * - `'entered'`\n * - `'exiting'`\n * - `'exited'`\n *\n * Transition state is toggled via the `in` prop. When `true` the component\n * begins the \"Enter\" stage. During this stage, the component will shift from\n * its current transition state, to `'entering'` for the duration of the\n * transition and then to the `'entered'` stage once it's complete. Let's take\n * the following example (we'll use the\n * [useState](https://reactjs.org/docs/hooks-reference.html#usestate) hook):\n *\n * ```jsx\n * function App() {\n * const [inProp, setInProp] = useState(false);\n * return (\n *
\n * \n * {state => (\n * // ...\n * )}\n * \n * \n *
\n * );\n * }\n * ```\n *\n * When the button is clicked the component will shift to the `'entering'` state\n * and stay there for 500ms (the value of `timeout`) before it finally switches\n * to `'entered'`.\n *\n * When `in` is `false` the same thing happens except the state moves from\n * `'exiting'` to `'exited'`.\n */\n\nvar Transition = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(Transition, _React$Component);\n\n function Transition(props, context) {\n var _this;\n\n _this = _React$Component.call(this, props, context) || this;\n var parentGroup = context; // In the context of a TransitionGroup all enters are really appears\n\n var appear = parentGroup && !parentGroup.isMounting ? props.enter : props.appear;\n var initialStatus;\n _this.appearStatus = null;\n\n if (props.in) {\n if (appear) {\n initialStatus = EXITED;\n _this.appearStatus = ENTERING;\n } else {\n initialStatus = ENTERED;\n }\n } else {\n if (props.unmountOnExit || props.mountOnEnter) {\n initialStatus = UNMOUNTED;\n } else {\n initialStatus = EXITED;\n }\n }\n\n _this.state = {\n status: initialStatus\n };\n _this.nextCallback = null;\n return _this;\n }\n\n Transition.getDerivedStateFromProps = function getDerivedStateFromProps(_ref, prevState) {\n var nextIn = _ref.in;\n\n if (nextIn && prevState.status === UNMOUNTED) {\n return {\n status: EXITED\n };\n }\n\n return null;\n } // getSnapshotBeforeUpdate(prevProps) {\n // let nextStatus = null\n // if (prevProps !== this.props) {\n // const { status } = this.state\n // if (this.props.in) {\n // if (status !== ENTERING && status !== ENTERED) {\n // nextStatus = ENTERING\n // }\n // } else {\n // if (status === ENTERING || status === ENTERED) {\n // nextStatus = EXITING\n // }\n // }\n // }\n // return { nextStatus }\n // }\n ;\n\n var _proto = Transition.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n this.updateStatus(true, this.appearStatus);\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var nextStatus = null;\n\n if (prevProps !== this.props) {\n var status = this.state.status;\n\n if (this.props.in) {\n if (status !== ENTERING && status !== ENTERED) {\n nextStatus = ENTERING;\n }\n } else {\n if (status === ENTERING || status === ENTERED) {\n nextStatus = EXITING;\n }\n }\n }\n\n this.updateStatus(false, nextStatus);\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.cancelNextCallback();\n };\n\n _proto.getTimeouts = function getTimeouts() {\n var timeout = this.props.timeout;\n var exit, enter, appear;\n exit = enter = appear = timeout;\n\n if (timeout != null && typeof timeout !== 'number') {\n exit = timeout.exit;\n enter = timeout.enter; // TODO: remove fallback for next major\n\n appear = timeout.appear !== undefined ? timeout.appear : enter;\n }\n\n return {\n exit: exit,\n enter: enter,\n appear: appear\n };\n };\n\n _proto.updateStatus = function updateStatus(mounting, nextStatus) {\n if (mounting === void 0) {\n mounting = false;\n }\n\n if (nextStatus !== null) {\n // nextStatus will always be ENTERING or EXITING.\n this.cancelNextCallback();\n\n if (nextStatus === ENTERING) {\n this.performEnter(mounting);\n } else {\n this.performExit();\n }\n } else if (this.props.unmountOnExit && this.state.status === EXITED) {\n this.setState({\n status: UNMOUNTED\n });\n }\n };\n\n _proto.performEnter = function performEnter(mounting) {\n var _this2 = this;\n\n var enter = this.props.enter;\n var appearing = this.context ? this.context.isMounting : mounting;\n\n var _ref2 = this.props.nodeRef ? [appearing] : [ReactDOM.findDOMNode(this), appearing],\n maybeNode = _ref2[0],\n maybeAppearing = _ref2[1];\n\n var timeouts = this.getTimeouts();\n var enterTimeout = appearing ? timeouts.appear : timeouts.enter; // no enter animation skip right to ENTERED\n // if we are mounting and running this it means appear _must_ be set\n\n if (!mounting && !enter || config.disabled) {\n this.safeSetState({\n status: ENTERED\n }, function () {\n _this2.props.onEntered(maybeNode);\n });\n return;\n }\n\n this.props.onEnter(maybeNode, maybeAppearing);\n this.safeSetState({\n status: ENTERING\n }, function () {\n _this2.props.onEntering(maybeNode, maybeAppearing);\n\n _this2.onTransitionEnd(enterTimeout, function () {\n _this2.safeSetState({\n status: ENTERED\n }, function () {\n _this2.props.onEntered(maybeNode, maybeAppearing);\n });\n });\n });\n };\n\n _proto.performExit = function performExit() {\n var _this3 = this;\n\n var exit = this.props.exit;\n var timeouts = this.getTimeouts();\n var maybeNode = this.props.nodeRef ? undefined : ReactDOM.findDOMNode(this); // no exit animation skip right to EXITED\n\n if (!exit || config.disabled) {\n this.safeSetState({\n status: EXITED\n }, function () {\n _this3.props.onExited(maybeNode);\n });\n return;\n }\n\n this.props.onExit(maybeNode);\n this.safeSetState({\n status: EXITING\n }, function () {\n _this3.props.onExiting(maybeNode);\n\n _this3.onTransitionEnd(timeouts.exit, function () {\n _this3.safeSetState({\n status: EXITED\n }, function () {\n _this3.props.onExited(maybeNode);\n });\n });\n });\n };\n\n _proto.cancelNextCallback = function cancelNextCallback() {\n if (this.nextCallback !== null) {\n this.nextCallback.cancel();\n this.nextCallback = null;\n }\n };\n\n _proto.safeSetState = function safeSetState(nextState, callback) {\n // This shouldn't be necessary, but there are weird race conditions with\n // setState callbacks and unmounting in testing, so always make sure that\n // we can cancel any pending setState callbacks after we unmount.\n callback = this.setNextCallback(callback);\n this.setState(nextState, callback);\n };\n\n _proto.setNextCallback = function setNextCallback(callback) {\n var _this4 = this;\n\n var active = true;\n\n this.nextCallback = function (event) {\n if (active) {\n active = false;\n _this4.nextCallback = null;\n callback(event);\n }\n };\n\n this.nextCallback.cancel = function () {\n active = false;\n };\n\n return this.nextCallback;\n };\n\n _proto.onTransitionEnd = function onTransitionEnd(timeout, handler) {\n this.setNextCallback(handler);\n var node = this.props.nodeRef ? this.props.nodeRef.current : ReactDOM.findDOMNode(this);\n var doesNotHaveTimeoutOrListener = timeout == null && !this.props.addEndListener;\n\n if (!node || doesNotHaveTimeoutOrListener) {\n setTimeout(this.nextCallback, 0);\n return;\n }\n\n if (this.props.addEndListener) {\n var _ref3 = this.props.nodeRef ? [this.nextCallback] : [node, this.nextCallback],\n maybeNode = _ref3[0],\n maybeNextCallback = _ref3[1];\n\n this.props.addEndListener(maybeNode, maybeNextCallback);\n }\n\n if (timeout != null) {\n setTimeout(this.nextCallback, timeout);\n }\n };\n\n _proto.render = function render() {\n var status = this.state.status;\n\n if (status === UNMOUNTED) {\n return null;\n }\n\n var _this$props = this.props,\n children = _this$props.children,\n _in = _this$props.in,\n _mountOnEnter = _this$props.mountOnEnter,\n _unmountOnExit = _this$props.unmountOnExit,\n _appear = _this$props.appear,\n _enter = _this$props.enter,\n _exit = _this$props.exit,\n _timeout = _this$props.timeout,\n _addEndListener = _this$props.addEndListener,\n _onEnter = _this$props.onEnter,\n _onEntering = _this$props.onEntering,\n _onEntered = _this$props.onEntered,\n _onExit = _this$props.onExit,\n _onExiting = _this$props.onExiting,\n _onExited = _this$props.onExited,\n _nodeRef = _this$props.nodeRef,\n childProps = _objectWithoutPropertiesLoose(_this$props, [\"children\", \"in\", \"mountOnEnter\", \"unmountOnExit\", \"appear\", \"enter\", \"exit\", \"timeout\", \"addEndListener\", \"onEnter\", \"onEntering\", \"onEntered\", \"onExit\", \"onExiting\", \"onExited\", \"nodeRef\"]);\n\n return (\n /*#__PURE__*/\n // allows for nested Transitions\n React.createElement(TransitionGroupContext.Provider, {\n value: null\n }, typeof children === 'function' ? children(status, childProps) : React.cloneElement(React.Children.only(children), childProps))\n );\n };\n\n return Transition;\n}(React.Component);\n\nTransition.contextType = TransitionGroupContext;\n\n// Name the function so it is clearer in the documentation\nfunction noop() {}\n\nTransition.defaultProps = {\n in: false,\n mountOnEnter: false,\n unmountOnExit: false,\n appear: false,\n enter: true,\n exit: true,\n onEnter: noop,\n onEntering: noop,\n onEntered: noop,\n onExit: noop,\n onExiting: noop,\n onExited: noop\n};\nTransition.UNMOUNTED = UNMOUNTED;\nTransition.EXITED = EXITED;\nTransition.ENTERING = ENTERING;\nTransition.ENTERED = ENTERED;\nTransition.EXITING = EXITING;\nexport default Transition;","export default !!(typeof window !== 'undefined' && window.document && window.document.createElement);","/* eslint-disable no-return-assign */\nimport canUseDOM from './canUseDOM';\nexport var optionsSupported = false;\nexport var onceSupported = false;\n\ntry {\n var options = {\n get passive() {\n return optionsSupported = true;\n },\n\n get once() {\n // eslint-disable-next-line no-multi-assign\n return onceSupported = optionsSupported = true;\n }\n\n };\n\n if (canUseDOM) {\n window.addEventListener('test', options, options);\n window.removeEventListener('test', options, true);\n }\n} catch (e) {\n /* */\n}\n\n/**\n * An `addEventListener` ponyfill, supports the `once` option\n * \n * @param node the element\n * @param eventName the event name\n * @param handle the handler\n * @param options event options\n */\nfunction addEventListener(node, eventName, handler, options) {\n if (options && typeof options !== 'boolean' && !onceSupported) {\n var once = options.once,\n capture = options.capture;\n var wrappedHandler = handler;\n\n if (!onceSupported && once) {\n wrappedHandler = handler.__once || function onceHandler(event) {\n this.removeEventListener(eventName, onceHandler, capture);\n handler.call(this, event);\n };\n\n handler.__once = wrappedHandler;\n }\n\n node.addEventListener(eventName, wrappedHandler, optionsSupported ? options : capture);\n }\n\n node.addEventListener(eventName, handler, options);\n}\n\nexport default addEventListener;","/**\n * A `removeEventListener` ponyfill\n * \n * @param node the element\n * @param eventName the event name\n * @param handle the handler\n * @param options event options\n */\nfunction removeEventListener(node, eventName, handler, options) {\n var capture = options && typeof options !== 'boolean' ? options.capture : options;\n node.removeEventListener(eventName, handler, capture);\n\n if (handler.__once) {\n node.removeEventListener(eventName, handler.__once, capture);\n }\n}\n\nexport default removeEventListener;","import addEventListener from './addEventListener';\nimport removeEventListener from './removeEventListener';\n\nfunction listen(node, eventName, handler, options) {\n addEventListener(node, eventName, handler, options);\n return function () {\n removeEventListener(node, eventName, handler, options);\n };\n}\n\nexport default listen;","import css from './css';\nimport listen from './listen';\nimport triggerEvent from './triggerEvent';\n\nfunction parseDuration(node) {\n var str = css(node, 'transitionDuration') || '';\n var mult = str.indexOf('ms') === -1 ? 1000 : 1;\n return parseFloat(str) * mult;\n}\n\nfunction emulateTransitionEnd(element, duration, padding) {\n if (padding === void 0) {\n padding = 5;\n }\n\n var called = false;\n var handle = setTimeout(function () {\n if (!called) triggerEvent(element, 'transitionend', true);\n }, duration + padding);\n var remove = listen(element, 'transitionend', function () {\n called = true;\n }, {\n once: true\n });\n return function () {\n clearTimeout(handle);\n remove();\n };\n}\n\nexport default function transitionEnd(element, handler, duration, padding) {\n if (duration == null) duration = parseDuration(element) || 0;\n var removeEmulate = emulateTransitionEnd(element, duration, padding);\n var remove = listen(element, 'transitionend', handler);\n return function () {\n removeEmulate();\n remove();\n };\n}","/**\n * Triggers an event on a given element.\n * \n * @param node the element\n * @param eventName the event name to trigger\n * @param bubbles whether the event should bubble up\n * @param cancelable whether the event should be cancelable\n */\nexport default function triggerEvent(node, eventName, bubbles, cancelable) {\n if (bubbles === void 0) {\n bubbles = false;\n }\n\n if (cancelable === void 0) {\n cancelable = true;\n }\n\n if (node) {\n var event = document.createEvent('HTMLEvents');\n event.initEvent(eventName, bubbles, cancelable);\n node.dispatchEvent(event);\n }\n}","import css from 'dom-helpers/css';\nimport transitionEnd from 'dom-helpers/transitionEnd';\n\nfunction parseDuration(node, property) {\n var str = css(node, property) || '';\n var mult = str.indexOf('ms') === -1 ? 1000 : 1;\n return parseFloat(str) * mult;\n}\n\nexport default function transitionEndListener(element, handler) {\n var duration = parseDuration(element, 'transitionDuration');\n var delay = parseDuration(element, 'transitionDelay');\n var remove = transitionEnd(element, function (e) {\n if (e.target === element) {\n remove();\n handler(e);\n }\n }, duration + delay);\n}","/**\n * Safe chained function\n *\n * Will only create a new function if needed,\n * otherwise will pass back existing functions or null.\n *\n * @param {function} functions to chain\n * @returns {function|null}\n */\nfunction createChainedFunction() {\n for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) {\n funcs[_key] = arguments[_key];\n }\n\n return funcs.filter(function (f) {\n return f != null;\n }).reduce(function (acc, f) {\n if (typeof f !== 'function') {\n throw new Error('Invalid Argument Type, must only provide functions, undefined, or null.');\n }\n\n if (acc === null) return f;\n return function chainedFunction() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n } // @ts-ignore\n\n\n acc.apply(this, args); // @ts-ignore\n\n f.apply(this, args);\n };\n }, null);\n}\n\nexport default createChainedFunction;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nvar _excluded = [\"onEnter\", \"onEntering\", \"onEntered\", \"onExit\", \"onExiting\", \"className\", \"children\", \"dimension\", \"getDimensionValue\"];\n\nvar _collapseStyles;\n\nimport classNames from 'classnames';\nimport css from 'dom-helpers/css';\nimport React, { useMemo } from 'react';\nimport Transition, { ENTERED, ENTERING, EXITED, EXITING } from 'react-transition-group/Transition';\nimport transitionEndListener from './transitionEndListener';\nimport createChainedFunction from './createChainedFunction';\nimport triggerBrowserReflow from './triggerBrowserReflow';\nvar MARGINS = {\n height: ['marginTop', 'marginBottom'],\n width: ['marginLeft', 'marginRight']\n};\n\nfunction getDefaultDimensionValue(dimension, elem) {\n var offset = \"offset\" + dimension[0].toUpperCase() + dimension.slice(1);\n var value = elem[offset];\n var margins = MARGINS[dimension];\n return value + // @ts-ignore\n parseInt(css(elem, margins[0]), 10) + // @ts-ignore\n parseInt(css(elem, margins[1]), 10);\n}\n\nvar collapseStyles = (_collapseStyles = {}, _collapseStyles[EXITED] = 'collapse', _collapseStyles[EXITING] = 'collapsing', _collapseStyles[ENTERING] = 'collapsing', _collapseStyles[ENTERED] = 'collapse show', _collapseStyles);\nvar defaultProps = {\n in: false,\n timeout: 300,\n mountOnEnter: false,\n unmountOnExit: false,\n appear: false,\n getDimensionValue: getDefaultDimensionValue\n};\nvar Collapse = /*#__PURE__*/React.forwardRef(function (_ref, ref) {\n var onEnter = _ref.onEnter,\n onEntering = _ref.onEntering,\n onEntered = _ref.onEntered,\n onExit = _ref.onExit,\n onExiting = _ref.onExiting,\n className = _ref.className,\n children = _ref.children,\n _ref$dimension = _ref.dimension,\n dimension = _ref$dimension === void 0 ? 'height' : _ref$dimension,\n _ref$getDimensionValu = _ref.getDimensionValue,\n getDimensionValue = _ref$getDimensionValu === void 0 ? getDefaultDimensionValue : _ref$getDimensionValu,\n props = _objectWithoutPropertiesLoose(_ref, _excluded);\n /* Compute dimension */\n\n\n var computedDimension = typeof dimension === 'function' ? dimension() : dimension;\n /* -- Expanding -- */\n\n var handleEnter = useMemo(function () {\n return createChainedFunction(function (elem) {\n elem.style[computedDimension] = '0';\n }, onEnter);\n }, [computedDimension, onEnter]);\n var handleEntering = useMemo(function () {\n return createChainedFunction(function (elem) {\n var scroll = \"scroll\" + computedDimension[0].toUpperCase() + computedDimension.slice(1);\n elem.style[computedDimension] = elem[scroll] + \"px\";\n }, onEntering);\n }, [computedDimension, onEntering]);\n var handleEntered = useMemo(function () {\n return createChainedFunction(function (elem) {\n elem.style[computedDimension] = null;\n }, onEntered);\n }, [computedDimension, onEntered]);\n /* -- Collapsing -- */\n\n var handleExit = useMemo(function () {\n return createChainedFunction(function (elem) {\n elem.style[computedDimension] = getDimensionValue(computedDimension, elem) + \"px\";\n triggerBrowserReflow(elem);\n }, onExit);\n }, [onExit, getDimensionValue, computedDimension]);\n var handleExiting = useMemo(function () {\n return createChainedFunction(function (elem) {\n elem.style[computedDimension] = null;\n }, onExiting);\n }, [computedDimension, onExiting]);\n return /*#__PURE__*/React.createElement(Transition // @ts-ignore\n , _extends({\n ref: ref,\n addEndListener: transitionEndListener\n }, props, {\n \"aria-expanded\": props.role ? props.in : null,\n onEnter: handleEnter,\n onEntering: handleEntering,\n onEntered: handleEntered,\n onExit: handleExit,\n onExiting: handleExiting\n }), function (state, innerProps) {\n return /*#__PURE__*/React.cloneElement(children, _extends({}, innerProps, {\n className: classNames(className, children.props.className, collapseStyles[state], computedDimension === 'width' && 'width')\n }));\n });\n}); // @ts-ignore\n// @ts-ignore\n\nCollapse.defaultProps = defaultProps;\nexport default Collapse;","// reading a dimension prop will cause the browser to recalculate,\n// which will let our animations work\nexport default function triggerBrowserReflow(node) {\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n node.offsetHeight;\n}","import React from 'react'; // TODO: check\n\nvar context = /*#__PURE__*/React.createContext(null);\ncontext.displayName = 'NavbarContext';\nexport default context;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nvar _excluded = [\"children\", \"bsPrefix\"];\nimport React from 'react';\nimport Collapse from './Collapse';\nimport { useBootstrapPrefix } from './ThemeProvider';\nimport NavbarContext from './NavbarContext';\nvar NavbarCollapse = /*#__PURE__*/React.forwardRef(function (_ref, ref) {\n var children = _ref.children,\n bsPrefix = _ref.bsPrefix,\n props = _objectWithoutPropertiesLoose(_ref, _excluded);\n\n bsPrefix = useBootstrapPrefix(bsPrefix, 'navbar-collapse');\n return /*#__PURE__*/React.createElement(NavbarContext.Consumer, null, function (context) {\n return /*#__PURE__*/React.createElement(Collapse, _extends({\n in: !!(context && context.expanded)\n }, props), /*#__PURE__*/React.createElement(\"div\", {\n ref: ref,\n className: bsPrefix\n }, children));\n });\n});\nNavbarCollapse.displayName = 'NavbarCollapse';\nexport default NavbarCollapse;","import { useEffect, useRef } from 'react';\n/**\n * Creates a `Ref` whose value is updated in an effect, ensuring the most recent\n * value is the one rendered with. Generally only required for Concurrent mode usage\n * where previous work in `render()` may be discarded befor being used.\n *\n * This is safe to access in an event handler.\n *\n * @param value The `Ref` value\n */\n\nfunction useCommittedRef(value) {\n var ref = useRef(value);\n useEffect(function () {\n ref.current = value;\n }, [value]);\n return ref;\n}\n\nexport default useCommittedRef;","import { useCallback } from 'react';\nimport useCommittedRef from './useCommittedRef';\nexport default function useEventCallback(fn) {\n var ref = useCommittedRef(fn);\n return useCallback(function () {\n return ref.current && ref.current.apply(ref, arguments);\n }, [ref]);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nvar _excluded = [\"bsPrefix\", \"className\", \"children\", \"label\", \"as\", \"onClick\"];\nimport classNames from 'classnames';\nimport React, { useContext } from 'react';\nimport useEventCallback from '@restart/hooks/useEventCallback';\nimport { useBootstrapPrefix } from './ThemeProvider';\nimport NavbarContext from './NavbarContext';\nvar defaultProps = {\n label: 'Toggle navigation'\n};\nvar NavbarToggle = /*#__PURE__*/React.forwardRef(function (_ref, ref) {\n var bsPrefix = _ref.bsPrefix,\n className = _ref.className,\n children = _ref.children,\n label = _ref.label,\n _ref$as = _ref.as,\n Component = _ref$as === void 0 ? 'button' : _ref$as,\n onClick = _ref.onClick,\n props = _objectWithoutPropertiesLoose(_ref, _excluded);\n\n bsPrefix = useBootstrapPrefix(bsPrefix, 'navbar-toggler');\n\n var _ref2 = useContext(NavbarContext) || {},\n onToggle = _ref2.onToggle,\n expanded = _ref2.expanded;\n\n var handleClick = useEventCallback(function (e) {\n if (onClick) onClick(e);\n if (onToggle) onToggle();\n });\n\n if (Component === 'button') {\n props.type = 'button';\n }\n\n return /*#__PURE__*/React.createElement(Component, _extends({}, props, {\n ref: ref,\n onClick: handleClick,\n \"aria-label\": label,\n className: classNames(className, bsPrefix, !expanded && 'collapsed')\n }), children || /*#__PURE__*/React.createElement(\"span\", {\n className: bsPrefix + \"-icon\"\n }));\n});\nNavbarToggle.displayName = 'NavbarToggle';\nNavbarToggle.defaultProps = defaultProps;\nexport default NavbarToggle;","import React from 'react'; // TODO (apparently this is a bare \"onSelect\"?)\n\nvar SelectableContext = /*#__PURE__*/React.createContext(null);\nexport var makeEventKey = function makeEventKey(eventKey, href) {\n if (href === void 0) {\n href = null;\n }\n\n if (eventKey != null) return String(eventKey);\n return href || null;\n};\nexport default SelectableContext;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nvar _excluded = [\"bsPrefix\", \"expand\", \"variant\", \"bg\", \"fixed\", \"sticky\", \"className\", \"children\", \"as\", \"expanded\", \"onToggle\", \"onSelect\", \"collapseOnSelect\"];\nimport classNames from 'classnames';\nimport React, { useCallback, useMemo } from 'react';\nimport { useUncontrolled } from 'uncontrollable';\nimport createWithBsPrefix from './createWithBsPrefix';\nimport NavbarBrand from './NavbarBrand';\nimport NavbarCollapse from './NavbarCollapse';\nimport NavbarToggle from './NavbarToggle';\nimport { useBootstrapPrefix } from './ThemeProvider';\nimport NavbarContext from './NavbarContext';\nimport SelectableContext from './SelectableContext';\nvar NavbarText = createWithBsPrefix('navbar-text', {\n Component: 'span'\n});\nvar defaultProps = {\n expand: true,\n variant: 'light',\n collapseOnSelect: false\n};\nvar Navbar = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _useUncontrolled = useUncontrolled(props, {\n expanded: 'onToggle'\n }),\n initialBsPrefix = _useUncontrolled.bsPrefix,\n expand = _useUncontrolled.expand,\n variant = _useUncontrolled.variant,\n bg = _useUncontrolled.bg,\n fixed = _useUncontrolled.fixed,\n sticky = _useUncontrolled.sticky,\n className = _useUncontrolled.className,\n children = _useUncontrolled.children,\n _useUncontrolled$as = _useUncontrolled.as,\n Component = _useUncontrolled$as === void 0 ? 'nav' : _useUncontrolled$as,\n expanded = _useUncontrolled.expanded,\n _onToggle = _useUncontrolled.onToggle,\n onSelect = _useUncontrolled.onSelect,\n collapseOnSelect = _useUncontrolled.collapseOnSelect,\n controlledProps = _objectWithoutPropertiesLoose(_useUncontrolled, _excluded);\n\n var bsPrefix = useBootstrapPrefix(initialBsPrefix, 'navbar');\n var handleCollapse = useCallback(function () {\n if (onSelect) onSelect.apply(void 0, arguments);\n\n if (collapseOnSelect && expanded) {\n if (_onToggle) {\n _onToggle(false);\n }\n }\n }, [onSelect, collapseOnSelect, expanded, _onToggle]); // will result in some false positives but that seems better\n // than false negatives. strict `undefined` check allows explicit\n // \"nulling\" of the role if the user really doesn't want one\n\n if (controlledProps.role === undefined && Component !== 'nav') {\n controlledProps.role = 'navigation';\n }\n\n var expandClass = bsPrefix + \"-expand\";\n if (typeof expand === 'string') expandClass = expandClass + \"-\" + expand;\n var navbarContext = useMemo(function () {\n return {\n onToggle: function onToggle() {\n return _onToggle && _onToggle(!expanded);\n },\n bsPrefix: bsPrefix,\n expanded: !!expanded\n };\n }, [bsPrefix, expanded, _onToggle]);\n return /*#__PURE__*/React.createElement(NavbarContext.Provider, {\n value: navbarContext\n }, /*#__PURE__*/React.createElement(SelectableContext.Provider, {\n value: handleCollapse\n }, /*#__PURE__*/React.createElement(Component, _extends({\n ref: ref\n }, controlledProps, {\n className: classNames(className, bsPrefix, expand && expandClass, variant && bsPrefix + \"-\" + variant, bg && \"bg-\" + bg, sticky && \"sticky-\" + sticky, fixed && \"fixed-\" + fixed)\n }), children)));\n});\nNavbar.defaultProps = defaultProps;\nNavbar.displayName = 'Navbar';\nNavbar.Brand = NavbarBrand;\nNavbar.Toggle = NavbarToggle;\nNavbar.Collapse = NavbarCollapse;\nNavbar.Text = NavbarText;\nexport default Navbar;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nvar _excluded = [\"bsPrefix\", \"fluid\", \"as\", \"className\"];\nimport classNames from 'classnames';\nimport React from 'react';\nimport { useBootstrapPrefix } from './ThemeProvider';\nvar defaultProps = {\n fluid: false\n};\nvar Container = /*#__PURE__*/React.forwardRef(function (_ref, ref) {\n var bsPrefix = _ref.bsPrefix,\n fluid = _ref.fluid,\n _ref$as = _ref.as,\n Component = _ref$as === void 0 ? 'div' : _ref$as,\n className = _ref.className,\n props = _objectWithoutPropertiesLoose(_ref, _excluded);\n\n var prefix = useBootstrapPrefix(bsPrefix, 'container');\n var suffix = typeof fluid === 'string' ? \"-\" + fluid : '-fluid';\n return /*#__PURE__*/React.createElement(Component, _extends({\n ref: ref\n }, props, {\n className: classNames(className, fluid ? \"\" + prefix + suffix : prefix)\n }));\n});\nContainer.displayName = 'Container';\nContainer.defaultProps = defaultProps;\nexport default Container;","import React from 'react';\nvar context = /*#__PURE__*/React.createContext(null);\ncontext.displayName = 'CardContext';\nexport default context;","var toArray = Function.prototype.bind.call(Function.prototype.call, [].slice);\n/**\n * Runs `querySelectorAll` on a given element.\n * \n * @param element the element\n * @param selector the selector\n */\n\nexport default function qsa(element, selector) {\n return toArray(element.querySelectorAll(selector));\n}","import { useMemo } from 'react';\n\nvar toFnRef = function toFnRef(ref) {\n return !ref || typeof ref === 'function' ? ref : function (value) {\n ref.current = value;\n };\n};\n\nexport function mergeRefs(refA, refB) {\n var a = toFnRef(refA);\n var b = toFnRef(refB);\n return function (value) {\n if (a) a(value);\n if (b) b(value);\n };\n}\n/**\n * Create and returns a single callback ref composed from two other Refs.\n *\n * ```tsx\n * const Button = React.forwardRef((props, ref) => {\n * const [element, attachRef] = useCallbackRef();\n * const mergedRef = useMergedRefs(ref, attachRef);\n *\n * return \n * ```\n */\n\nexport default function useForceUpdate() {\n // The toggling state value is designed to defeat React optimizations for skipping\n // updates when they are stricting equal to the last state value\n var _useReducer = useReducer(function (state) {\n return !state;\n }, false),\n dispatch = _useReducer[1];\n\n return dispatch;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nvar _excluded = [\"bsPrefix\", \"className\", \"children\", \"as\"];\nimport classNames from 'classnames';\nimport React from 'react';\nimport { useBootstrapPrefix } from './ThemeProvider';\nvar NavItem = /*#__PURE__*/React.forwardRef( // Need to define the default \"as\" during prop destructuring to be compatible with styled-components github.com/react-bootstrap/react-bootstrap/issues/3595\nfunction (_ref, ref) {\n var bsPrefix = _ref.bsPrefix,\n className = _ref.className,\n children = _ref.children,\n _ref$as = _ref.as,\n Component = _ref$as === void 0 ? 'div' : _ref$as,\n props = _objectWithoutPropertiesLoose(_ref, _excluded);\n\n bsPrefix = useBootstrapPrefix(bsPrefix, 'nav-item');\n return /*#__PURE__*/React.createElement(Component, _extends({}, props, {\n ref: ref,\n className: classNames(className, bsPrefix)\n }), children);\n});\nNavItem.displayName = 'NavItem';\nexport default NavItem;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nvar _excluded = [\"as\", \"disabled\", \"onKeyDown\"];\nimport React from 'react';\nimport createChainedFunction from './createChainedFunction';\n\nfunction isTrivialHref(href) {\n return !href || href.trim() === '#';\n}\n/**\n * There are situations due to browser quirks or Bootstrap CSS where\n * an anchor tag is needed, when semantically a button tag is the\n * better choice. SafeAnchor ensures that when an anchor is used like a\n * button its accessible. It also emulates input `disabled` behavior for\n * links, which is usually desirable for Buttons, NavItems, DropdownItems, etc.\n */\n\n\nvar SafeAnchor = /*#__PURE__*/React.forwardRef(function (_ref, ref) {\n var _ref$as = _ref.as,\n Component = _ref$as === void 0 ? 'a' : _ref$as,\n disabled = _ref.disabled,\n onKeyDown = _ref.onKeyDown,\n props = _objectWithoutPropertiesLoose(_ref, _excluded);\n\n var handleClick = function handleClick(event) {\n var href = props.href,\n onClick = props.onClick;\n\n if (disabled || isTrivialHref(href)) {\n event.preventDefault();\n }\n\n if (disabled) {\n event.stopPropagation();\n return;\n }\n\n if (onClick) {\n onClick(event);\n }\n };\n\n var handleKeyDown = function handleKeyDown(event) {\n if (event.key === ' ') {\n event.preventDefault();\n handleClick(event);\n }\n };\n\n if (isTrivialHref(props.href)) {\n props.role = props.role || 'button'; // we want to make sure there is a href attribute on the node\n // otherwise, the cursor incorrectly styled (except with role='button')\n\n props.href = props.href || '#';\n }\n\n if (disabled) {\n props.tabIndex = -1;\n props['aria-disabled'] = true;\n }\n\n return /*#__PURE__*/React.createElement(Component, _extends({\n ref: ref\n }, props, {\n onClick: handleClick,\n onKeyDown: createChainedFunction(handleKeyDown, onKeyDown)\n }));\n});\nSafeAnchor.displayName = 'SafeAnchor';\nexport default SafeAnchor;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nvar _excluded = [\"active\", \"className\", \"eventKey\", \"onSelect\", \"onClick\", \"as\"];\nimport classNames from 'classnames';\nimport React, { useContext } from 'react';\nimport useEventCallback from '@restart/hooks/useEventCallback';\nimport warning from 'warning';\nimport NavContext from './NavContext';\nimport SelectableContext, { makeEventKey } from './SelectableContext';\nvar defaultProps = {\n disabled: false\n};\nvar AbstractNavItem = /*#__PURE__*/React.forwardRef(function (_ref, ref) {\n var active = _ref.active,\n className = _ref.className,\n eventKey = _ref.eventKey,\n onSelect = _ref.onSelect,\n onClick = _ref.onClick,\n Component = _ref.as,\n props = _objectWithoutPropertiesLoose(_ref, _excluded);\n\n var navKey = makeEventKey(eventKey, props.href);\n var parentOnSelect = useContext(SelectableContext);\n var navContext = useContext(NavContext);\n var isActive = active;\n\n if (navContext) {\n if (!props.role && navContext.role === 'tablist') props.role = 'tab';\n var contextControllerId = navContext.getControllerId(navKey);\n var contextControlledId = navContext.getControlledId(navKey);\n process.env.NODE_ENV !== \"production\" ? warning(!contextControllerId || !props.id, \"[react-bootstrap] The provided id '\" + props.id + \"' was overwritten by the current navContext with '\" + contextControllerId + \"'.\") : void 0;\n process.env.NODE_ENV !== \"production\" ? warning(!contextControlledId || !props['aria-controls'], \"[react-bootstrap] The provided aria-controls value '\" + props['aria-controls'] + \"' was overwritten by the current navContext with '\" + contextControlledId + \"'.\") : void 0;\n props['data-rb-event-key'] = navKey;\n props.id = contextControllerId || props.id;\n props['aria-controls'] = contextControlledId || props['aria-controls'];\n isActive = active == null && navKey != null ? navContext.activeKey === navKey : active;\n }\n\n if (props.role === 'tab') {\n if (props.disabled) {\n props.tabIndex = -1;\n props['aria-disabled'] = true;\n }\n\n props['aria-selected'] = isActive;\n }\n\n var handleOnclick = useEventCallback(function (e) {\n if (onClick) onClick(e);\n if (navKey == null) return;\n if (onSelect) onSelect(navKey, e);\n if (parentOnSelect) parentOnSelect(navKey, e);\n });\n return /*#__PURE__*/React.createElement(Component, _extends({}, props, {\n ref: ref,\n onClick: handleOnclick,\n className: classNames(className, isActive && 'active')\n }));\n});\nAbstractNavItem.defaultProps = defaultProps;\nexport default AbstractNavItem;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nvar _excluded = [\"bsPrefix\", \"disabled\", \"className\", \"href\", \"eventKey\", \"onSelect\", \"as\"];\nimport classNames from 'classnames';\nimport React from 'react';\nimport SafeAnchor from './SafeAnchor';\nimport AbstractNavItem from './AbstractNavItem';\nimport { useBootstrapPrefix } from './ThemeProvider';\nvar defaultProps = {\n disabled: false,\n as: SafeAnchor\n};\nvar NavLink = /*#__PURE__*/React.forwardRef(function (_ref, ref) {\n var bsPrefix = _ref.bsPrefix,\n disabled = _ref.disabled,\n className = _ref.className,\n href = _ref.href,\n eventKey = _ref.eventKey,\n onSelect = _ref.onSelect,\n as = _ref.as,\n props = _objectWithoutPropertiesLoose(_ref, _excluded);\n\n bsPrefix = useBootstrapPrefix(bsPrefix, 'nav-link');\n return /*#__PURE__*/React.createElement(AbstractNavItem, _extends({}, props, {\n href: href,\n ref: ref,\n eventKey: eventKey,\n as: as,\n disabled: disabled,\n onSelect: onSelect,\n className: classNames(className, bsPrefix, disabled && 'disabled')\n }));\n});\nNavLink.displayName = 'NavLink';\nNavLink.defaultProps = defaultProps;\nexport default NavLink;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nvar _excluded = [\"as\", \"bsPrefix\", \"variant\", \"fill\", \"justify\", \"navbar\", \"navbarScroll\", \"className\", \"children\", \"activeKey\"];\nimport classNames from 'classnames';\nimport all from 'prop-types-extra/lib/all';\nimport React, { useContext } from 'react';\nimport { useUncontrolled } from 'uncontrollable';\nimport { useBootstrapPrefix } from './ThemeProvider';\nimport NavbarContext from './NavbarContext';\nimport CardContext from './CardContext';\nimport AbstractNav from './AbstractNav';\nimport NavItem from './NavItem';\nimport NavLink from './NavLink';\nvar defaultProps = {\n justify: false,\n fill: false\n};\nvar Nav = /*#__PURE__*/React.forwardRef(function (uncontrolledProps, ref) {\n var _classNames;\n\n var _useUncontrolled = useUncontrolled(uncontrolledProps, {\n activeKey: 'onSelect'\n }),\n _useUncontrolled$as = _useUncontrolled.as,\n as = _useUncontrolled$as === void 0 ? 'div' : _useUncontrolled$as,\n initialBsPrefix = _useUncontrolled.bsPrefix,\n variant = _useUncontrolled.variant,\n fill = _useUncontrolled.fill,\n justify = _useUncontrolled.justify,\n navbar = _useUncontrolled.navbar,\n navbarScroll = _useUncontrolled.navbarScroll,\n className = _useUncontrolled.className,\n children = _useUncontrolled.children,\n activeKey = _useUncontrolled.activeKey,\n props = _objectWithoutPropertiesLoose(_useUncontrolled, _excluded);\n\n var bsPrefix = useBootstrapPrefix(initialBsPrefix, 'nav');\n var navbarBsPrefix;\n var cardHeaderBsPrefix;\n var isNavbar = false;\n var navbarContext = useContext(NavbarContext);\n var cardContext = useContext(CardContext);\n\n if (navbarContext) {\n navbarBsPrefix = navbarContext.bsPrefix;\n isNavbar = navbar == null ? true : navbar;\n } else if (cardContext) {\n cardHeaderBsPrefix = cardContext.cardHeaderBsPrefix;\n }\n\n return /*#__PURE__*/React.createElement(AbstractNav, _extends({\n as: as,\n ref: ref,\n activeKey: activeKey,\n className: classNames(className, (_classNames = {}, _classNames[bsPrefix] = !isNavbar, _classNames[navbarBsPrefix + \"-nav\"] = isNavbar, _classNames[navbarBsPrefix + \"-nav-scroll\"] = isNavbar && navbarScroll, _classNames[cardHeaderBsPrefix + \"-\" + variant] = !!cardHeaderBsPrefix, _classNames[bsPrefix + \"-\" + variant] = !!variant, _classNames[bsPrefix + \"-fill\"] = fill, _classNames[bsPrefix + \"-justified\"] = justify, _classNames))\n }, props), children);\n});\nNav.displayName = 'Nav';\nNav.defaultProps = defaultProps;\nNav.Item = NavItem;\nNav.Link = NavLink;\nexport default Nav;","function toVal(mix) {\n var k,\n y,\n str = '';\n\n if (typeof mix === 'string' || typeof mix === 'number') {\n str += mix;\n } else if (typeof mix === 'object') {\n if (Array.isArray(mix)) {\n for (k = 0; k < mix.length; k++) {\n if (mix[k]) {\n if (y = toVal(mix[k])) {\n str && (str += ' ');\n str += y;\n }\n }\n }\n } else {\n for (k in mix) {\n if (mix[k]) {\n str && (str += ' ');\n str += k;\n }\n }\n }\n }\n\n return str;\n}\n\nexport default function () {\n var i = 0,\n tmp,\n x,\n str = '';\n\n while (i < arguments.length) {\n if (tmp = arguments[i++]) {\n if (x = toVal(tmp)) {\n str && (str += ' ');\n str += x;\n }\n }\n }\n\n return str;\n}","/* eslint-disable no-undefined,no-param-reassign,no-shadow */\n\n/**\n * Throttle execution of a function. Especially useful for rate limiting\n * execution of handlers on events like resize and scroll.\n *\n * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.\n * @param {boolean} [noTrailing] - Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds while the\n * throttled-function is being called. If noTrailing is false or unspecified, callback will be executed one final time\n * after the last throttled-function call. (After the throttled-function has not been called for `delay` milliseconds,\n * the internal counter is reset).\n * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,\n * to `callback` when the throttled-function is executed.\n * @param {boolean} [debounceMode] - If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is false (at end),\n * schedule `callback` to execute after `delay` ms.\n *\n * @returns {Function} A new, throttled, function.\n */\nfunction throttle(delay, noTrailing, callback, debounceMode) {\n /*\n * After wrapper has stopped being called, this timeout ensures that\n * `callback` is executed at the proper times in `throttle` and `end`\n * debounce modes.\n */\n var timeoutID;\n var cancelled = false; // Keep track of the last time `callback` was executed.\n\n var lastExec = 0; // Function to clear existing timeout\n\n function clearExistingTimeout() {\n if (timeoutID) {\n clearTimeout(timeoutID);\n }\n } // Function to cancel next exec\n\n\n function cancel() {\n clearExistingTimeout();\n cancelled = true;\n } // `noTrailing` defaults to falsy.\n\n\n if (typeof noTrailing !== 'boolean') {\n debounceMode = callback;\n callback = noTrailing;\n noTrailing = undefined;\n }\n /*\n * The `wrapper` function encapsulates all of the throttling / debouncing\n * functionality and when executed will limit the rate at which `callback`\n * is executed.\n */\n\n\n function wrapper() {\n for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) {\n arguments_[_key] = arguments[_key];\n }\n\n var self = this;\n var elapsed = Date.now() - lastExec;\n\n if (cancelled) {\n return;\n } // Execute `callback` and update the `lastExec` timestamp.\n\n\n function exec() {\n lastExec = Date.now();\n callback.apply(self, arguments_);\n }\n /*\n * If `debounceMode` is true (at begin) this is used to clear the flag\n * to allow future `callback` executions.\n */\n\n\n function clear() {\n timeoutID = undefined;\n }\n\n if (debounceMode && !timeoutID) {\n /*\n * Since `wrapper` is being called for the first time and\n * `debounceMode` is true (at begin), execute `callback`.\n */\n exec();\n }\n\n clearExistingTimeout();\n\n if (debounceMode === undefined && elapsed > delay) {\n /*\n * In throttle mode, if `delay` time has been exceeded, execute\n * `callback`.\n */\n exec();\n } else if (noTrailing !== true) {\n /*\n * In trailing throttle mode, since `delay` time has not been\n * exceeded, schedule `callback` to execute `delay` ms after most\n * recent execution.\n *\n * If `debounceMode` is true (at begin), schedule `clear` to execute\n * after `delay` ms.\n *\n * If `debounceMode` is false (at end), schedule `callback` to\n * execute after `delay` ms.\n */\n timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay);\n }\n }\n\n wrapper.cancel = cancel; // Return the wrapper function.\n\n return wrapper;\n}\n/* eslint-disable no-undefined */\n\n/**\n * Debounce execution of a function. Debouncing, unlike throttling,\n * guarantees that a function is only executed a single time, either at the\n * very beginning of a series of calls, or at the very end.\n *\n * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.\n * @param {boolean} [atBegin] - Optional, defaults to false. If atBegin is false or unspecified, callback will only be executed `delay` milliseconds\n * after the last debounced-function call. If atBegin is true, callback will be executed only at the first debounced-function call.\n * (After the throttled-function has not been called for `delay` milliseconds, the internal counter is reset).\n * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,\n * to `callback` when the debounced-function is executed.\n *\n * @returns {Function} A new, debounced function.\n */\n\n\nfunction debounce(delay, atBegin, callback) {\n return callback === undefined ? throttle(delay, atBegin, false) : throttle(delay, callback, atBegin !== false);\n}\n\nexport { debounce, throttle };","import React from \"react\";\nimport { throttle } from \"throttle-debounce\";\n\nconst useWindowOnScroll = (handleWindowScroll, loadOnceOnMount = true) => {\n const internalHandleScroll = React.useMemo(() => {\n // 166 -> 60HZ\n return handleWindowScroll ? throttle(166, handleWindowScroll) : handleWindowScroll;\n }, [handleWindowScroll]);\n\n React.useEffect(() => {\n if (internalHandleScroll == null) {\n return undefined;\n }\n\n window.addEventListener(\"scroll\", internalHandleScroll);\n return () => {\n window.removeEventListener(\"scroll\", internalHandleScroll);\n internalHandleScroll.cancel();\n };\n }, [internalHandleScroll]);\n\n React.useEffect(() => {\n if (loadOnceOnMount) {\n handleWindowScroll();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n};\n\nexport default useWindowOnScroll;\n","import React from \"react\";\n\nimport { scroller, animateScroll } from \"react-scroll\";\n\nconst DefOptions = {\n smooth: \"easeInOutQuart\",\n};\n\nconst useSmoothScrollTo = (anchorOrPosition, options = {}) => {\n const opts = React.useMemo(\n () => ({\n ...DefOptions,\n ...options,\n }),\n [options],\n );\n\n const handleScrollTo = React.useCallback(() => {\n switch (typeof anchorOrPosition) {\n case \"number\":\n case \"bigint\":\n animateScroll.scrollTo(anchorOrPosition, opts);\n break;\n case \"string\":\n scroller.scrollTo(anchorOrPosition, opts);\n break;\n default:\n break;\n }\n }, [anchorOrPosition, opts]);\n\n return handleScrollTo;\n};\n\nexport default useSmoothScrollTo;\n","import React from \"react\";\n\nimport { Nav } from \"react-bootstrap\";\nimport { Link as ScrollLink } from \"react-scroll\";\nimport { Link } from \"gatsby\";\n\nconst NavItem = ({ to, isScrollLink, onClick, children }) => {\n if (isScrollLink)\n return ( \n \n \n {children || to}\n \n \n )\n\n return (\n \n \n {children || to}\n \n \n );\n};\n\nexport default NavItem;\n","import React from \"react\";\nimport { Navbar, Container, Nav } from \"react-bootstrap\";\nimport clsx from \"clsx\";\n\nimport useWindowOnScroll from \"../../hooks/useWindowOnScroll\";\nimport useSmoothScrollTo from \"../../hooks/useSmoothScrollTo\";\nimport NavItem from \"../../components/navitem\";\nimport Image from \"../../components/image\";\n\nconst MyNavbar = ({ extraItems }) => {\n const handleScrollToTop = useSmoothScrollTo(0);\n\n const [expanded, setExpanded] = React.useState(false);\n\n const toggleMenu = React.useCallback(() => {\n setExpanded(!expanded);\n }, [expanded]);\n\n const closeMenu = React.useCallback(() => {\n setExpanded(false);\n }, []);\n\n const handleBrandClick = React.useCallback(() => {\n closeMenu();\n handleScrollToTop();\n }, [closeMenu, handleScrollToTop]);\n\n const [shrink, setShrink] = React.useState(false);\n\n const handleWindowScroll = React.useCallback(() => {\n const scrollTop = document.documentElement.scrollTop || document.body.scrollTop;\n setShrink(scrollTop > 100);\n }, []);\n\n useWindowOnScroll(handleWindowScroll);\n\n const brandStyles = {\n width: \"60px\",\n cursor: \"pointer\"\n }\n\n return (\n \n \n \n
\n \"logo\"\n
\n \n
\n \n Menu\n \n \n \n {extraItems}\n \n
\n \n );\n \n};\n\nexport default MyNavbar;\n","import React from \"react\";\n\nconst About = () => {\n const anchor = \"About\";\n\n return (\n
\n
\n
\n
\n
\n

\n About us\n - Our Origin Story\n

\n

\n Every superhero has an origin story and the same is true for super teams\n

\n
\n
\n
\n
\n
\n
\n
\n

\n We began our journey in 2018 as a small team of seasoned professionals on a mission\n to help our largest client at the time rediscover the art of delivering quality\n software on time and on budget. Sounds simple, we know, but simple is frequently\n lost in large enterprises when multiple stakeholders are involved.\n

\n

\n As it usually happens, success brings more work and we've been lucky enough to be\n recognised by our clients, so that our team grew six-fold in two years. We took on\n more projects and built dedicated teams for Cloud Applications Development, Cloud\n Migration and Business Applications with focus on Tableau. We now manage and\n support products and applications that operate in the United Kingdom as well as in\n France, Germany, Netherlands, Singapore, Australia, New Zealand and the USA.\n

\n
\n
\n
\n
\n
\n
\n

\n Our headquarters is in the beautiful seaside town of Varna in Bulgaria but our team\n members are mostly remote and work from various places such as the town of Plovdiv\n and the capital Sofia. Our sales and operations office is in the town of Reading\n in the United Kingdom. We pride ourselves on being able to make remote teams work\n which also enables us to find the best talent without being limited to specific\n locations.\n

\n

\n No company overview would be complete without dropping some core values. Ours are\n rooted in the entrepreneurial spirit, giving employees every opportunity to be\n brilliant and have true ownership of the products they build. We embrace the\n adventure on a daily basis and invite those who refuse to accept good enough to\n join us for the ride.\n

\n
\n
\n
\n
\n
\n
\n );\n};\n\nexport default About;\n","import React from \"react\";\nimport { Widget } from '@typeform/embed-react'\n\nconst Contact = () => {\n return (\n
\n
\n
\n
\n
\n
\n
\n

Contact us

\n

Ready to start your next project with us? Give us a call or send us an email and we will get back to you!

\n
\n
\n
    \n
  • \n \n \n \n \n \n\n +44 118 228 0486\n
  • \n
  • \n \n \n \n \n \n \n hi@vasoftware.co.uk\n \n
  • \n
  • \n \n \n \n \n \n {\" \"}\n Reading, United Kingdom\n
  • \n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n );\n};\n\nexport default Contact;\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar __DEV__ = process.env.NODE_ENV !== 'production';\n\nvar warning = function() {};\n\nif (__DEV__) {\n var printWarning = function printWarning(format, args) {\n var len = arguments.length;\n args = new Array(len > 1 ? len - 1 : 0);\n for (var key = 1; key < len; key++) {\n args[key - 1] = arguments[key];\n }\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n }\n\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n if (!condition) {\n printWarning.apply(null, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;\n","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}"],"names":["e","module","exports","t","n","constructor","o","i","r","Array","isArray","length","RegExp","source","flags","valueOf","Object","prototype","toString","keys","hasOwnProperty","call","a","default","this","__createBinding","create","defineProperty","enumerable","get","__exportStar","value","__importDefault","__esModule","InlineStyle","filename","createElement","__assign","assign","arguments","apply","__setModuleDefault","__importStar","s","__rest","indexOf","getOwnPropertySymbols","propertyIsEnumerable","makeButtonComponent","u","c","d","unmount","open","id","children","as","l","p","style","f","v","className","m","h","buttonProps","b","g","useRef","useEffect","current","y","useMemo","x","onClick","Fragment","makeInitializerComponent","Widget","createWidget","container","ref","Sidetab","Popover","SliderButton","PopupButton","memoComponent","createPopup","createSlider","createPopover","createSidetab","propsAreEqual","memo","Error","code","resolve","FORM_BASE_URL","POPUP_SIZE","SLIDER_WIDTH","SLIDER_POSITION","SIDETAB_ATTRIBUTE","WIDGET_ATTRIBUTE","SLIDER_ATTRIBUTE","POPUP_ATTRIBUTE","POPOVER_ATTRIBUTE","parentNode","removeChild","appendChild","document","innerHTML","dataset","testid","buttonColor","createIframe","iframe","embedId","setElementSize","width","height","customIcon","getTextColor","w","append","O","_","j","backgroundColor","color","body","P","classList","add","setTimeout","unmountElement","tooltip","onclick","notificationDays","enableSandbox","canBuildNotificationDot","buildNotificationDot","onload","opacity","addCustomKeyboardListener","C","E","isOpen","saveNotificationDotHideUntilTime","isInPage","display","onClose","keepSession","remove","setAutoClose","autoClose","I","handleCustomOpen","openValue","close","toggle","refresh","contentWindow","location","reload","localStorage","getItem","JSON","parse","setItem","stringify","Date","setDate","getDate","hideUntilTime","getTime","hasDom","size","overflow","isDefined","buttonText","position","inlineOnMobile","forceTouch","isFullscreen","enableFullscreen","buildWidget","lazy","lazyInitialize","window","addEventListener","getWelcomeScreenHiddenHandler","buildIframeSrc","widget","popup","slider","popover","formId","type","options","transitiveSearchParams","medium","mediumVersion","hideFooter","hideHeaders","disableTracking","disableAutoFocus","shareGaInstance","tracking","getTransitiveSearchParams","hostname","replace","removeUndefinedKeys","URL","chat","entries","filter","forEach","searchParams","set","hidden","hash","href","clientY","removeEventListener","pageYOffset","documentElement","scrollTop","clientTop","scrollHeight","innerHeight","generateEmbedId","iframeProps","onReady","onQuestionChanged","onSubmit","src","border","allow","setAttribute","triggerIframeRedraw","once","getFormReadyHandler","getFormQuestionChangedHandler","getFormSubmitHandler","dispatchCustomKeyEventFromIframe","setupGaInstance","Math","random","String","split","data","getFormEventHandler","__awaiter","Promise","next","throw","done","then","__generator","label","sent","trys","ops","return","Symbol","iterator","TypeError","pop","push","removeCustomKeyboardListener","_r","dispatchEvent","KeyboardEvent","transform","startsWith","hexRgb","red","green","blue","match","parseInt","round","has","test","slice","Number","includeCss","querySelector","rel","head","isVisible","IntersectionObserver","isIntersecting","unobserve","target","observe","loadOptionsFromAttributes","transformAttributeValue","camelCaseToKebabCase","map","toUpperCase","toLowerCase","join","NaN","isNaN","reduce","trim","getAttribute","isMobile","isBigScreen","screen","navigator","userAgent","sendGaIdMessage","gaClientId","postMessage","console","error","GoogleAnalyticsObject","find","getAll","toStringTag","hasOwn","classNames","classes","arg","argType","inner","key","FUNC_ERROR_TEXT","reTrim","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","freeGlobal","freeSelf","self","root","Function","objectToString","nativeMax","max","nativeMin","min","now","debounce","func","wait","lastArgs","lastThis","maxWait","result","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","invokeFunc","time","args","thisArg","undefined","leadingEdge","timerExpired","shouldInvoke","timeSinceLastCall","trailingEdge","remainingWait","debounced","isInvoking","toNumber","isObject","cancel","clearTimeout","flush","isObjectLike","isSymbol","other","isBinary","_len","validators","_key","allPropTypes","_len2","_key2","validator","_createChainableTypeChecker2","obj","_createChainableTypeChecker","validate","checkType","isRequired","props","propName","componentName","propFullName","componentNameSafe","propFullNameSafe","concat","chainedCheckType","bind","hasElementType","Element","hasMap","Map","hasSet","Set","hasArrayBuffer","ArrayBuffer","isView","equal","it","$$typeof","message","warn","_createClass","defineProperties","descriptor","configurable","writable","Constructor","protoProps","staticProps","_react2","_interopRequireDefault","_scrollLink2","_classCallCheck","instance","_possibleConstructorReturn","ReferenceError","ButtonElement","_React$Component","__proto__","getPrototypeOf","subClass","superClass","setPrototypeOf","_inherits","Component","_extends","_scrollElement2","_propTypes2","ElementWrapper","_this2","newProps","parentBindings","el","domNode","propTypes","name","string","LinkElement","_ref","_temp","_this","render","_Link2","_Button2","_Element2","_scroller2","_scrollEvents2","_scrollSpy2","_animateScroll2","_Helpers2","React","scrollSpy","defaultScroller","PropTypes","scrollHash","protoTypes","to","containerId","object","activeClass","spy","bool","smooth","oneOfType","offset","number","delay","isDynamic","duration","absolute","onSetActive","onSetInactive","ignoreCancelEvents","hashSpy","spyThrottle","Helpers","Scroll","customScroller","scroller","_initialiseProps","state","active","getElementById","nodeType","scrollSpyContainer","getScrollSpyContainer","isMounted","mount","mapContainer","addStateHandler","stateHandler","addSpyHandler","spyHandler","setState","prop","handleClick","scrollTo","event","stopPropagation","preventDefault","getActiveLink","isInitialized","element","elemTopBound","elemBottomBound","containerTop","getBoundingClientRect","top","cords","offsetY","isInside","floor","isOutside","activeLink","setActiveLink","getHash","changeHash","updateStates","defaultProps","_React$Component2","_this3","childBindings","registerElems","prevProps","unregister","register","_smooth2","_cancelEvents2","getAnimationType","defaultEasing","requestAnimationFrameHelper","requestAnimationFrame","webkitRequestAnimationFrame","currentWindowProperties","callback","currentPositionX","containerElement","scrollLeft","supportPageOffset","pageXOffset","isCSS1Compat","compatMode","currentPositionY","animateScroll","easing","timestamp","delta","targetPosition","startPosition","start","progress","percent","currentPosition","ceil","horizontal","easedAnimate","registered","setContainer","animateTopScroll","scrollOffset","delayTimeout","subscribe","parseFloat","proceedOptions","scrollToTop","scrollToBottom","scrollWidth","offsetWidth","html","clientWidth","scrollContainerWidth","offsetHeight","clientHeight","scrollContainerHeight","toPosition","scrollMore","_passiveEventListeners","events","cancelEvent","addPassiveEventListener","eventName","listener","supportsPassiveOption","opts","passive","removePassiveEventListener","Events","scrollEvent","evtName","_utils","_utils2","mountFlag","initialized","containers","handleHashChange","initStateFromHash","isInit","saveHashHistory","updateHash","_scrollHash2","Link","_React$PureComponent","PureComponent","elemLeftBound","elemRightBound","containerLeft","left","offsetX","_cords","_props$saveHashHistor","_props$saveHashHistor2","_saveHashHistory","_lodash","_lodash2","spyCallbacks","spySetState","scrollSpyContainers","throttle","eventHandler","throttleAmount","eventThrottler","scrollHandler","handler","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","urlToPush","pathname","search","history","pushState","replaceState","filterElementInContainer","contains","compareDocumentPosition","scrollX","getComputedStyle","offsetLeft","scrollY","_getElementOffsetInfo","isDocument","ex","React__default","_defineProperty","canUseDOM","reducePropsToState","handleStateChangeOnClient","mapStateOnServer","WrappedComponent","mountedInstances","emitChange","SideEffect","_PureComponent","peek","rewind","recordedState","_proto","UNSAFE_componentWillMount","componentDidUpdate","componentWillUnmount","index","displayName","getDisplayName","Image","fileName","alt","restProps","StaticQuery","query","image","images","edges","node","relativePath","includes","imageData","childImageSharp","gatsbyImageData","G","clock","_class","ATTRIBUTE_NAMES","TAG_NAMES","BASE","BODY","HEAD","HTML","LINK","META","NOSCRIPT","SCRIPT","STYLE","TITLE","TAG_PROPERTIES","REACT_TAG_MAP","accesskey","charset","class","contenteditable","contextmenu","itemprop","tabindex","HELMET_PROPS","HTML_TAG_MAP","SELF_CLOSING_TAGS","HELMET_ATTRIBUTE","_typeof","classCallCheck","createClass","objectWithoutProperties","possibleConstructorReturn","encodeSpecialCharacters","str","encode","getTitleFromPropsList","propsList","innermostTitle","getInnermostProperty","innermostTemplate","innermostDefaultTitle","getOnChangeClientState","getAttributesFromPropsList","tagType","tagAttrs","getBaseTagFromPropsList","primaryAttributes","reverse","innermostBaseTag","tag","lowerCaseAttributeKey","getTagsFromPropsList","tagName","approvedSeenTags","approvedTags","instanceTags","instanceSeenTags","primaryAttributeKey","attributeKey","tagUnion","property","rafPolyfill","currentTime","cafPolyfill","mozRequestAnimationFrame","cancelAnimationFrame","webkitCancelAnimationFrame","mozCancelAnimationFrame","msg","_helmetCallback","commitTagChanges","newState","cb","baseTag","bodyAttributes","htmlAttributes","linkTags","metaTags","noscriptTags","onChangeClientState","scriptTags","styleTags","title","titleAttributes","updateAttributes","updateTitle","tagUpdates","updateTags","addedTags","removedTags","_tagUpdates$tagType","newTags","oldTags","flattenArray","possibleArray","attributes","elementTag","getElementsByTagName","helmetAttributeString","helmetAttributes","attributesToRemove","attributeKeys","attribute","indexToSave","_i","removeAttribute","tags","headElement","tagNodes","querySelectorAll","indexToDelete","newElement","styleSheet","cssText","createTextNode","some","existingTag","isEqualNode","generateElementAttributesAsString","attr","convertElementAttributestoReactProps","initProps","getMethodsForTag","toComponent","_initProps","attributeString","flattenedTitle","generateTitleAsString","_mappedTag","mappedTag","mappedAttribute","content","dangerouslySetInnerHTML","__html","generateTagsAsReactComponent","attributeHtml","tagContent","isSelfClosing","generateTagsAsString","_ref$title","base","meta","noscript","script","HelmetSideEffects","defer","HelmetExport","HelmetWrapper","inherits","shouldComponentUpdate","nextProps","mapNestedChildrenToProps","child","nestedChildren","flattenArrayTypeChildren","_babelHelpers$extends","arrayTypeChildren","newChildProps","mapObjectTypeChildren","_ref2","_babelHelpers$extends2","_babelHelpers$extends3","mapArrayTypeChildrenToProps","newFlattenedProps","arrayChildName","_babelHelpers$extends4","warnOnInvalidChildren","mapChildrenToProps","_child$props","initAttributes","convertReactPropstoHtmlAttributes","_props","defaultTitle","titleTemplate","mappedState","renderStatic","SEO","lang","description","keywords","site","useStaticQuery","metaDescription","siteMetadata","author","frontmatter","getFullYear","defaultKey","charAt","substr","_toPropertyKey","input","hint","prim","toPrimitive","res","_toPrimitive","useUncontrolled","config","fieldName","_extends2","defaultValue","propsValue","rest","handlerName","_useUncontrolledProp","propValue","wasPropRef","_useState","useState","stateValue","isProp","wasProp","useCallback","useUncontrolledProp","rHyphen","ThemeContext","Consumer","Provider","useBootstrapPrefix","prefix","defaultPrefix","prefixes","useContext","_excluded","pascalCase","chr","NavbarBrand","bsPrefix","ownerWindow","doc","ownerDocument","defaultView","rUpper","msPattern","hyphenateStyleName","hyphenate","supportedTransforms","css","transforms","getPropertyValue","psuedoElement","isTransform","removeProperty","UNMOUNTED","EXITED","ENTERING","ENTERED","EXITING","Transition","context","initialStatus","appear","isMounting","enter","appearStatus","in","unmountOnExit","mountOnEnter","status","nextCallback","getDerivedStateFromProps","prevState","componentDidMount","updateStatus","nextStatus","cancelNextCallback","getTimeouts","exit","timeout","mounting","performEnter","performExit","appearing","nodeRef","maybeNode","maybeAppearing","timeouts","enterTimeout","safeSetState","onEntered","onEnter","onEntering","onTransitionEnd","onExit","onExiting","onExited","nextState","setNextCallback","_this4","doesNotHaveTimeoutOrListener","addEndListener","_ref3","maybeNextCallback","_this$props","childProps","TransitionGroupContext","contextType","optionsSupported","onceSupported","capture","wrappedHandler","__once","onceHandler","emulateTransitionEnd","padding","called","handle","bubbles","cancelable","createEvent","initEvent","triggerEvent","transitionEnd","mult","removeEmulate","transitionEndListener","funcs","acc","_collapseStyles","MARGINS","getDefaultDimensionValue","dimension","elem","margins","collapseStyles","getDimensionValue","Collapse","_ref$dimension","_ref$getDimensionValu","computedDimension","handleEnter","handleEntering","scroll","handleEntered","handleExit","handleExiting","role","innerProps","NavbarCollapse","NavbarContext","expanded","useEventCallback","fn","NavbarToggle","_ref$as","onToggle","makeEventKey","eventKey","NavbarText","_ref$displayName","BsComponent","_ref2$as","Tag","resolvedPrefix","createWithBsPrefix","Navbar","_useUncontrolled","initialBsPrefix","expand","variant","bg","fixed","sticky","_useUncontrolled$as","_onToggle","onSelect","collapseOnSelect","controlledProps","handleCollapse","expandClass","navbarContext","Brand","Toggle","Text","Container","fluid","suffix","toArray","toFnRef","refA","refB","mergeRefs","NavContext","getControlledId","getControllerId","activeKey","onKeyDown","forceUpdate","useReducer","needsRefocusRef","parentOnSelect","tabContext","listNode","getNextActiveChild","currentListNode","selector","items","activeChild","nextIndex","handleSelect","focus","mergedRef","nextActiveChild","rbEventKey","NavItem","isTrivialHref","SafeAnchor","disabled","tabIndex","AbstractNavItem","navKey","navContext","isActive","contextControllerId","contextControlledId","handleOnclick","NavLink","Nav","uncontrolledProps","_classNames","navbarBsPrefix","cardHeaderBsPrefix","fill","justify","navbar","navbarScroll","isNavbar","cardContext","CardContext","Item","toVal","mix","k","tmp","noTrailing","debounceMode","timeoutID","cancelled","lastExec","clearExistingTimeout","wrapper","arguments_","elapsed","exec","clear","handleWindowScroll","loadOnceOnMount","internalHandleScroll","DefOptions","anchorOrPosition","isScrollLink","extraItems","handleScrollToTop","useSmoothScrollTo","setExpanded","toggleMenu","closeMenu","handleBrandClick","shrink","setShrink","useWindowOnScroll","clsx","cursor","xmlns","viewBox","stroke","strokeLinecap","strokeLinejoin","strokeWidth","warning","_objectWithoutPropertiesLoose","excluded","sourceKeys"],"sourceRoot":""}