{"version":3,"file":"8a79393a00ed036ce4c52b3a475334ef2b979573-e617b43a59621446bb2d.js","mappings":"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","sources":["webpack://imf-2021/./node_modules/exenv/index.js","webpack://imf-2021/./node_modules/react-modal/lib/components/Modal.js","webpack://imf-2021/./node_modules/react-modal/lib/components/ModalPortal.js","webpack://imf-2021/./node_modules/react-modal/lib/helpers/ariaAppHider.js","webpack://imf-2021/./node_modules/react-modal/lib/helpers/bodyTrap.js","webpack://imf-2021/./node_modules/react-modal/lib/helpers/classList.js","webpack://imf-2021/./node_modules/react-modal/lib/helpers/focusManager.js","webpack://imf-2021/./node_modules/react-modal/lib/helpers/portalOpenInstances.js","webpack://imf-2021/./node_modules/react-modal/lib/helpers/safeHTMLElement.js","webpack://imf-2021/./node_modules/react-modal/lib/helpers/scopeTab.js","webpack://imf-2021/./node_modules/react-modal/lib/helpers/tabbable.js","webpack://imf-2021/./node_modules/react-modal/lib/index.js","webpack://imf-2021/./node_modules/slugify/slugify.js","webpack://imf-2021/./src/components/appendix.js","webpack://imf-2021/./src/components/hero.js","webpack://imf-2021/./src/components/svg/icon-external-link.js","webpack://imf-2021/./src/images/appendix.inline.svg","webpack://imf-2021/./src/images/close.inline.svg","webpack://imf-2021/./node_modules/warning/warning.js"],"sourcesContent":["/*!\n  Copyright (c) 2015 Jed Watson.\n  Based on code that is Copyright 2013-2015, Facebook, Inc.\n  All rights reserved.\n*/\n\n/* global define */\n(function () {\n  'use strict';\n\n  var canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n  var ExecutionEnvironment = {\n    canUseDOM: canUseDOM,\n    canUseWorkers: typeof Worker !== 'undefined',\n    canUseEventListeners: canUseDOM && !!(window.addEventListener || window.attachEvent),\n    canUseViewport: canUseDOM && !!window.screen\n  };\n\n  if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n    define(function () {\n      return ExecutionEnvironment;\n    });\n  } else if (typeof module !== 'undefined' && module.exports) {\n    module.exports = ExecutionEnvironment;\n  } else {\n    window.ExecutionEnvironment = ExecutionEnvironment;\n  }\n})();","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.bodyOpenClassName = exports.portalClassName = undefined;\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 _propTypes = require(\"prop-types\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _ModalPortal = require(\"./ModalPortal\");\n\nvar _ModalPortal2 = _interopRequireDefault(_ModalPortal);\n\nvar _ariaAppHider = require(\"../helpers/ariaAppHider\");\n\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\n\nvar _safeHTMLElement = require(\"../helpers/safeHTMLElement\");\n\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\n\nvar _reactLifecyclesCompat = require(\"react-lifecycles-compat\");\n\nfunction _interopRequireWildcard(obj) {\n  if (obj && obj.__esModule) {\n    return obj;\n  } else {\n    var newObj = {};\n\n    if (obj != null) {\n      for (var key in obj) {\n        if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];\n      }\n    }\n\n    newObj.default = obj;\n    return newObj;\n  }\n}\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 portalClassName = exports.portalClassName = \"ReactModalPortal\";\nvar bodyOpenClassName = exports.bodyOpenClassName = \"ReactModal__Body--open\";\nvar isReact16 = _safeHTMLElement.canUseDOM && _reactDom2.default.createPortal !== undefined;\n\nvar createHTMLElement = function createHTMLElement(name) {\n  return document.createElement(name);\n};\n\nvar getCreatePortal = function getCreatePortal() {\n  return isReact16 ? _reactDom2.default.createPortal : _reactDom2.default.unstable_renderSubtreeIntoContainer;\n};\n\nfunction getParentElement(parentSelector) {\n  return parentSelector();\n}\n\nvar Modal = function (_Component) {\n  _inherits(Modal, _Component);\n\n  function Modal() {\n    var _ref;\n\n    var _temp, _this, _ret;\n\n    _classCallCheck(this, Modal);\n\n    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Modal.__proto__ || Object.getPrototypeOf(Modal)).call.apply(_ref, [this].concat(args))), _this), _this.removePortal = function () {\n      !isReact16 && _reactDom2.default.unmountComponentAtNode(_this.node);\n      var parent = getParentElement(_this.props.parentSelector);\n\n      if (parent && parent.contains(_this.node)) {\n        parent.removeChild(_this.node);\n      } else {\n        // eslint-disable-next-line no-console\n        console.warn('React-Modal: \"parentSelector\" prop did not returned any DOM ' + \"element. Make sure that the parent element is unmounted to \" + \"avoid any memory leaks.\");\n      }\n    }, _this.portalRef = function (ref) {\n      _this.portal = ref;\n    }, _this.renderPortal = function (props) {\n      var createPortal = getCreatePortal();\n      var portal = createPortal(_this, _react2.default.createElement(_ModalPortal2.default, _extends({\n        defaultStyles: Modal.defaultStyles\n      }, props)), _this.node);\n\n      _this.portalRef(portal);\n    }, _temp), _possibleConstructorReturn(_this, _ret);\n  }\n\n  _createClass(Modal, [{\n    key: \"componentDidMount\",\n    value: function componentDidMount() {\n      if (!_safeHTMLElement.canUseDOM) return;\n\n      if (!isReact16) {\n        this.node = createHTMLElement(\"div\");\n      }\n\n      this.node.className = this.props.portalClassName;\n      var parent = getParentElement(this.props.parentSelector);\n      parent.appendChild(this.node);\n      !isReact16 && this.renderPortal(this.props);\n    }\n  }, {\n    key: \"getSnapshotBeforeUpdate\",\n    value: function getSnapshotBeforeUpdate(prevProps) {\n      var prevParent = getParentElement(prevProps.parentSelector);\n      var nextParent = getParentElement(this.props.parentSelector);\n      return {\n        prevParent: prevParent,\n        nextParent: nextParent\n      };\n    }\n  }, {\n    key: \"componentDidUpdate\",\n    value: function componentDidUpdate(prevProps, _, snapshot) {\n      if (!_safeHTMLElement.canUseDOM) return;\n      var _props = this.props,\n          isOpen = _props.isOpen,\n          portalClassName = _props.portalClassName;\n\n      if (prevProps.portalClassName !== portalClassName) {\n        this.node.className = portalClassName;\n      }\n\n      var prevParent = snapshot.prevParent,\n          nextParent = snapshot.nextParent;\n\n      if (nextParent !== prevParent) {\n        prevParent.removeChild(this.node);\n        nextParent.appendChild(this.node);\n      } // Stop unnecessary renders if modal is remaining closed\n\n\n      if (!prevProps.isOpen && !isOpen) return;\n      !isReact16 && this.renderPortal(this.props);\n    }\n  }, {\n    key: \"componentWillUnmount\",\n    value: function componentWillUnmount() {\n      if (!_safeHTMLElement.canUseDOM || !this.node || !this.portal) return;\n      var state = this.portal.state;\n      var now = Date.now();\n      var closesAt = state.isOpen && this.props.closeTimeoutMS && (state.closesAt || now + this.props.closeTimeoutMS);\n\n      if (closesAt) {\n        if (!state.beforeClose) {\n          this.portal.closeWithTimeout();\n        }\n\n        setTimeout(this.removePortal, closesAt - now);\n      } else {\n        this.removePortal();\n      }\n    }\n  }, {\n    key: \"render\",\n    value: function render() {\n      if (!_safeHTMLElement.canUseDOM || !isReact16) {\n        return null;\n      }\n\n      if (!this.node && isReact16) {\n        this.node = createHTMLElement(\"div\");\n      }\n\n      var createPortal = getCreatePortal();\n      return createPortal(_react2.default.createElement(_ModalPortal2.default, _extends({\n        ref: this.portalRef,\n        defaultStyles: Modal.defaultStyles\n      }, this.props)), this.node);\n    }\n  }], [{\n    key: \"setAppElement\",\n    value: function setAppElement(element) {\n      ariaAppHider.setElement(element);\n    }\n    /* eslint-disable react/no-unused-prop-types */\n\n    /* eslint-enable react/no-unused-prop-types */\n\n  }]);\n\n  return Modal;\n}(_react.Component);\n\nModal.propTypes = {\n  isOpen: _propTypes2.default.bool.isRequired,\n  style: _propTypes2.default.shape({\n    content: _propTypes2.default.object,\n    overlay: _propTypes2.default.object\n  }),\n  portalClassName: _propTypes2.default.string,\n  bodyOpenClassName: _propTypes2.default.string,\n  htmlOpenClassName: _propTypes2.default.string,\n  className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n    base: _propTypes2.default.string.isRequired,\n    afterOpen: _propTypes2.default.string.isRequired,\n    beforeClose: _propTypes2.default.string.isRequired\n  })]),\n  overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n    base: _propTypes2.default.string.isRequired,\n    afterOpen: _propTypes2.default.string.isRequired,\n    beforeClose: _propTypes2.default.string.isRequired\n  })]),\n  appElement: _propTypes2.default.oneOfType([_propTypes2.default.instanceOf(_safeHTMLElement2.default), _propTypes2.default.instanceOf(_safeHTMLElement.SafeHTMLCollection), _propTypes2.default.instanceOf(_safeHTMLElement.SafeNodeList), _propTypes2.default.arrayOf(_propTypes2.default.instanceOf(_safeHTMLElement2.default))]),\n  onAfterOpen: _propTypes2.default.func,\n  onRequestClose: _propTypes2.default.func,\n  closeTimeoutMS: _propTypes2.default.number,\n  ariaHideApp: _propTypes2.default.bool,\n  shouldFocusAfterRender: _propTypes2.default.bool,\n  shouldCloseOnOverlayClick: _propTypes2.default.bool,\n  shouldReturnFocusAfterClose: _propTypes2.default.bool,\n  preventScroll: _propTypes2.default.bool,\n  parentSelector: _propTypes2.default.func,\n  aria: _propTypes2.default.object,\n  data: _propTypes2.default.object,\n  role: _propTypes2.default.string,\n  contentLabel: _propTypes2.default.string,\n  shouldCloseOnEsc: _propTypes2.default.bool,\n  overlayRef: _propTypes2.default.func,\n  contentRef: _propTypes2.default.func,\n  id: _propTypes2.default.string,\n  overlayElement: _propTypes2.default.func,\n  contentElement: _propTypes2.default.func\n};\nModal.defaultProps = {\n  isOpen: false,\n  portalClassName: portalClassName,\n  bodyOpenClassName: bodyOpenClassName,\n  role: \"dialog\",\n  ariaHideApp: true,\n  closeTimeoutMS: 0,\n  shouldFocusAfterRender: true,\n  shouldCloseOnEsc: true,\n  shouldCloseOnOverlayClick: true,\n  shouldReturnFocusAfterClose: true,\n  preventScroll: false,\n  parentSelector: function parentSelector() {\n    return document.body;\n  },\n  overlayElement: function overlayElement(props, contentEl) {\n    return _react2.default.createElement(\"div\", props, contentEl);\n  },\n  contentElement: function contentElement(props, children) {\n    return _react2.default.createElement(\"div\", props, children);\n  }\n};\nModal.defaultStyles = {\n  overlay: {\n    position: \"fixed\",\n    top: 0,\n    left: 0,\n    right: 0,\n    bottom: 0,\n    backgroundColor: \"rgba(255, 255, 255, 0.75)\"\n  },\n  content: {\n    position: \"absolute\",\n    top: \"40px\",\n    left: \"40px\",\n    right: \"40px\",\n    bottom: \"40px\",\n    border: \"1px solid #ccc\",\n    background: \"#fff\",\n    overflow: \"auto\",\n    WebkitOverflowScrolling: \"touch\",\n    borderRadius: \"4px\",\n    outline: \"none\",\n    padding: \"20px\"\n  }\n};\n(0, _reactLifecyclesCompat.polyfill)(Modal);\n\nif (process.env.NODE_ENV !== \"production\") {\n  Modal.setCreateHTMLElement = function (fn) {\n    return createHTMLElement = fn;\n  };\n}\n\nexports.default = Modal;","\"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 _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 _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 _propTypes = require(\"prop-types\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _focusManager = require(\"../helpers/focusManager\");\n\nvar focusManager = _interopRequireWildcard(_focusManager);\n\nvar _scopeTab = require(\"../helpers/scopeTab\");\n\nvar _scopeTab2 = _interopRequireDefault(_scopeTab);\n\nvar _ariaAppHider = require(\"../helpers/ariaAppHider\");\n\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\n\nvar _classList = require(\"../helpers/classList\");\n\nvar classList = _interopRequireWildcard(_classList);\n\nvar _safeHTMLElement = require(\"../helpers/safeHTMLElement\");\n\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\n\nvar _portalOpenInstances = require(\"../helpers/portalOpenInstances\");\n\nvar _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);\n\nrequire(\"../helpers/bodyTrap\");\n\nfunction _interopRequireWildcard(obj) {\n  if (obj && obj.__esModule) {\n    return obj;\n  } else {\n    var newObj = {};\n\n    if (obj != null) {\n      for (var key in obj) {\n        if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];\n      }\n    }\n\n    newObj.default = obj;\n    return newObj;\n  }\n}\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} // so that our CSS is statically analyzable\n\n\nvar CLASS_NAMES = {\n  overlay: \"ReactModal__Overlay\",\n  content: \"ReactModal__Content\"\n};\nvar TAB_KEY = 9;\nvar ESC_KEY = 27;\nvar ariaHiddenInstances = 0;\n\nvar ModalPortal = function (_Component) {\n  _inherits(ModalPortal, _Component);\n\n  function ModalPortal(props) {\n    _classCallCheck(this, ModalPortal);\n\n    var _this = _possibleConstructorReturn(this, (ModalPortal.__proto__ || Object.getPrototypeOf(ModalPortal)).call(this, props));\n\n    _this.setOverlayRef = function (overlay) {\n      _this.overlay = overlay;\n      _this.props.overlayRef && _this.props.overlayRef(overlay);\n    };\n\n    _this.setContentRef = function (content) {\n      _this.content = content;\n      _this.props.contentRef && _this.props.contentRef(content);\n    };\n\n    _this.afterClose = function () {\n      var _this$props = _this.props,\n          appElement = _this$props.appElement,\n          ariaHideApp = _this$props.ariaHideApp,\n          htmlOpenClassName = _this$props.htmlOpenClassName,\n          bodyOpenClassName = _this$props.bodyOpenClassName; // Remove classes.\n\n      bodyOpenClassName && classList.remove(document.body, bodyOpenClassName);\n      htmlOpenClassName && classList.remove(document.getElementsByTagName(\"html\")[0], htmlOpenClassName); // Reset aria-hidden attribute if all modals have been removed\n\n      if (ariaHideApp && ariaHiddenInstances > 0) {\n        ariaHiddenInstances -= 1;\n\n        if (ariaHiddenInstances === 0) {\n          ariaAppHider.show(appElement);\n        }\n      }\n\n      if (_this.props.shouldFocusAfterRender) {\n        if (_this.props.shouldReturnFocusAfterClose) {\n          focusManager.returnFocus(_this.props.preventScroll);\n          focusManager.teardownScopedFocus();\n        } else {\n          focusManager.popWithoutFocus();\n        }\n      }\n\n      if (_this.props.onAfterClose) {\n        _this.props.onAfterClose();\n      }\n\n      _portalOpenInstances2.default.deregister(_this);\n    };\n\n    _this.open = function () {\n      _this.beforeOpen();\n\n      if (_this.state.afterOpen && _this.state.beforeClose) {\n        clearTimeout(_this.closeTimer);\n\n        _this.setState({\n          beforeClose: false\n        });\n      } else {\n        if (_this.props.shouldFocusAfterRender) {\n          focusManager.setupScopedFocus(_this.node);\n          focusManager.markForFocusLater();\n        }\n\n        _this.setState({\n          isOpen: true\n        }, function () {\n          _this.openAnimationFrame = requestAnimationFrame(function () {\n            _this.setState({\n              afterOpen: true\n            });\n\n            if (_this.props.isOpen && _this.props.onAfterOpen) {\n              _this.props.onAfterOpen({\n                overlayEl: _this.overlay,\n                contentEl: _this.content\n              });\n            }\n          });\n        });\n      }\n    };\n\n    _this.close = function () {\n      if (_this.props.closeTimeoutMS > 0) {\n        _this.closeWithTimeout();\n      } else {\n        _this.closeWithoutTimeout();\n      }\n    };\n\n    _this.focusContent = function () {\n      return _this.content && !_this.contentHasFocus() && _this.content.focus({\n        preventScroll: true\n      });\n    };\n\n    _this.closeWithTimeout = function () {\n      var closesAt = Date.now() + _this.props.closeTimeoutMS;\n\n      _this.setState({\n        beforeClose: true,\n        closesAt: closesAt\n      }, function () {\n        _this.closeTimer = setTimeout(_this.closeWithoutTimeout, _this.state.closesAt - Date.now());\n      });\n    };\n\n    _this.closeWithoutTimeout = function () {\n      _this.setState({\n        beforeClose: false,\n        isOpen: false,\n        afterOpen: false,\n        closesAt: null\n      }, _this.afterClose);\n    };\n\n    _this.handleKeyDown = function (event) {\n      if (event.keyCode === TAB_KEY) {\n        (0, _scopeTab2.default)(_this.content, event);\n      }\n\n      if (_this.props.shouldCloseOnEsc && event.keyCode === ESC_KEY) {\n        event.stopPropagation();\n\n        _this.requestClose(event);\n      }\n    };\n\n    _this.handleOverlayOnClick = function (event) {\n      if (_this.shouldClose === null) {\n        _this.shouldClose = true;\n      }\n\n      if (_this.shouldClose && _this.props.shouldCloseOnOverlayClick) {\n        if (_this.ownerHandlesClose()) {\n          _this.requestClose(event);\n        } else {\n          _this.focusContent();\n        }\n      }\n\n      _this.shouldClose = null;\n    };\n\n    _this.handleContentOnMouseUp = function () {\n      _this.shouldClose = false;\n    };\n\n    _this.handleOverlayOnMouseDown = function (event) {\n      if (!_this.props.shouldCloseOnOverlayClick && event.target == _this.overlay) {\n        event.preventDefault();\n      }\n    };\n\n    _this.handleContentOnClick = function () {\n      _this.shouldClose = false;\n    };\n\n    _this.handleContentOnMouseDown = function () {\n      _this.shouldClose = false;\n    };\n\n    _this.requestClose = function (event) {\n      return _this.ownerHandlesClose() && _this.props.onRequestClose(event);\n    };\n\n    _this.ownerHandlesClose = function () {\n      return _this.props.onRequestClose;\n    };\n\n    _this.shouldBeClosed = function () {\n      return !_this.state.isOpen && !_this.state.beforeClose;\n    };\n\n    _this.contentHasFocus = function () {\n      return document.activeElement === _this.content || _this.content.contains(document.activeElement);\n    };\n\n    _this.buildClassName = function (which, additional) {\n      var classNames = (typeof additional === \"undefined\" ? \"undefined\" : _typeof(additional)) === \"object\" ? additional : {\n        base: CLASS_NAMES[which],\n        afterOpen: CLASS_NAMES[which] + \"--after-open\",\n        beforeClose: CLASS_NAMES[which] + \"--before-close\"\n      };\n      var className = classNames.base;\n\n      if (_this.state.afterOpen) {\n        className = className + \" \" + classNames.afterOpen;\n      }\n\n      if (_this.state.beforeClose) {\n        className = className + \" \" + classNames.beforeClose;\n      }\n\n      return typeof additional === \"string\" && additional ? className + \" \" + additional : className;\n    };\n\n    _this.attributesFromObject = function (prefix, items) {\n      return Object.keys(items).reduce(function (acc, name) {\n        acc[prefix + \"-\" + name] = items[name];\n        return acc;\n      }, {});\n    };\n\n    _this.state = {\n      afterOpen: false,\n      beforeClose: false\n    };\n    _this.shouldClose = null;\n    _this.moveFromContentToOverlay = null;\n    return _this;\n  }\n\n  _createClass(ModalPortal, [{\n    key: \"componentDidMount\",\n    value: function componentDidMount() {\n      if (this.props.isOpen) {\n        this.open();\n      }\n    }\n  }, {\n    key: \"componentDidUpdate\",\n    value: function componentDidUpdate(prevProps, prevState) {\n      if (process.env.NODE_ENV !== \"production\") {\n        if (prevProps.bodyOpenClassName !== this.props.bodyOpenClassName) {\n          // eslint-disable-next-line no-console\n          console.warn('React-Modal: \"bodyOpenClassName\" prop has been modified. ' + \"This may cause unexpected behavior when multiple modals are open.\");\n        }\n\n        if (prevProps.htmlOpenClassName !== this.props.htmlOpenClassName) {\n          // eslint-disable-next-line no-console\n          console.warn('React-Modal: \"htmlOpenClassName\" prop has been modified. ' + \"This may cause unexpected behavior when multiple modals are open.\");\n        }\n      }\n\n      if (this.props.isOpen && !prevProps.isOpen) {\n        this.open();\n      } else if (!this.props.isOpen && prevProps.isOpen) {\n        this.close();\n      } // Focus only needs to be set once when the modal is being opened\n\n\n      if (this.props.shouldFocusAfterRender && this.state.isOpen && !prevState.isOpen) {\n        this.focusContent();\n      }\n    }\n  }, {\n    key: \"componentWillUnmount\",\n    value: function componentWillUnmount() {\n      if (this.state.isOpen) {\n        this.afterClose();\n      }\n\n      clearTimeout(this.closeTimer);\n      cancelAnimationFrame(this.openAnimationFrame);\n    }\n  }, {\n    key: \"beforeOpen\",\n    value: function beforeOpen() {\n      var _props = this.props,\n          appElement = _props.appElement,\n          ariaHideApp = _props.ariaHideApp,\n          htmlOpenClassName = _props.htmlOpenClassName,\n          bodyOpenClassName = _props.bodyOpenClassName; // Add classes.\n\n      bodyOpenClassName && classList.add(document.body, bodyOpenClassName);\n      htmlOpenClassName && classList.add(document.getElementsByTagName(\"html\")[0], htmlOpenClassName);\n\n      if (ariaHideApp) {\n        ariaHiddenInstances += 1;\n        ariaAppHider.hide(appElement);\n      }\n\n      _portalOpenInstances2.default.register(this);\n    } // Don't steal focus from inner elements\n\n  }, {\n    key: \"render\",\n    value: function render() {\n      var _props2 = this.props,\n          id = _props2.id,\n          className = _props2.className,\n          overlayClassName = _props2.overlayClassName,\n          defaultStyles = _props2.defaultStyles,\n          children = _props2.children;\n      var contentStyles = className ? {} : defaultStyles.content;\n      var overlayStyles = overlayClassName ? {} : defaultStyles.overlay;\n\n      if (this.shouldBeClosed()) {\n        return null;\n      }\n\n      var overlayProps = {\n        ref: this.setOverlayRef,\n        className: this.buildClassName(\"overlay\", overlayClassName),\n        style: _extends({}, overlayStyles, this.props.style.overlay),\n        onClick: this.handleOverlayOnClick,\n        onMouseDown: this.handleOverlayOnMouseDown\n      };\n\n      var contentProps = _extends({\n        id: id,\n        ref: this.setContentRef,\n        style: _extends({}, contentStyles, this.props.style.content),\n        className: this.buildClassName(\"content\", className),\n        tabIndex: \"-1\",\n        onKeyDown: this.handleKeyDown,\n        onMouseDown: this.handleContentOnMouseDown,\n        onMouseUp: this.handleContentOnMouseUp,\n        onClick: this.handleContentOnClick,\n        role: this.props.role,\n        \"aria-label\": this.props.contentLabel\n      }, this.attributesFromObject(\"aria\", _extends({\n        modal: true\n      }, this.props.aria)), this.attributesFromObject(\"data\", this.props.data || {}), {\n        \"data-testid\": this.props.testId\n      });\n\n      var contentElement = this.props.contentElement(contentProps, children);\n      return this.props.overlayElement(overlayProps, contentElement);\n    }\n  }]);\n\n  return ModalPortal;\n}(_react.Component);\n\nModalPortal.defaultProps = {\n  style: {\n    overlay: {},\n    content: {}\n  },\n  defaultStyles: {}\n};\nModalPortal.propTypes = {\n  isOpen: _propTypes2.default.bool.isRequired,\n  defaultStyles: _propTypes2.default.shape({\n    content: _propTypes2.default.object,\n    overlay: _propTypes2.default.object\n  }),\n  style: _propTypes2.default.shape({\n    content: _propTypes2.default.object,\n    overlay: _propTypes2.default.object\n  }),\n  className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n  overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n  bodyOpenClassName: _propTypes2.default.string,\n  htmlOpenClassName: _propTypes2.default.string,\n  ariaHideApp: _propTypes2.default.bool,\n  appElement: _propTypes2.default.oneOfType([_propTypes2.default.instanceOf(_safeHTMLElement2.default), _propTypes2.default.instanceOf(_safeHTMLElement.SafeHTMLCollection), _propTypes2.default.instanceOf(_safeHTMLElement.SafeNodeList), _propTypes2.default.arrayOf(_propTypes2.default.instanceOf(_safeHTMLElement2.default))]),\n  onAfterOpen: _propTypes2.default.func,\n  onAfterClose: _propTypes2.default.func,\n  onRequestClose: _propTypes2.default.func,\n  closeTimeoutMS: _propTypes2.default.number,\n  shouldFocusAfterRender: _propTypes2.default.bool,\n  shouldCloseOnOverlayClick: _propTypes2.default.bool,\n  shouldReturnFocusAfterClose: _propTypes2.default.bool,\n  preventScroll: _propTypes2.default.bool,\n  role: _propTypes2.default.string,\n  contentLabel: _propTypes2.default.string,\n  aria: _propTypes2.default.object,\n  data: _propTypes2.default.object,\n  children: _propTypes2.default.node,\n  shouldCloseOnEsc: _propTypes2.default.bool,\n  overlayRef: _propTypes2.default.func,\n  contentRef: _propTypes2.default.func,\n  id: _propTypes2.default.string,\n  overlayElement: _propTypes2.default.func,\n  contentElement: _propTypes2.default.func,\n  testId: _propTypes2.default.string\n};\nexports.default = ModalPortal;\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nexports.assertNodeList = assertNodeList;\nexports.setElement = setElement;\nexports.validateElement = validateElement;\nexports.hide = hide;\nexports.show = show;\nexports.documentNotReadyOrSSRTesting = documentNotReadyOrSSRTesting;\n\nvar _warning = require(\"warning\");\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nvar _safeHTMLElement = require(\"./safeHTMLElement\");\n\nfunction _interopRequireDefault(obj) {\n  return obj && obj.__esModule ? obj : {\n    default: obj\n  };\n}\n\nvar globalElement = null;\n/* eslint-disable no-console */\n\n/* istanbul ignore next */\n\nfunction resetState() {\n  if (globalElement) {\n    if (globalElement.removeAttribute) {\n      globalElement.removeAttribute(\"aria-hidden\");\n    } else if (globalElement.length != null) {\n      globalElement.forEach(function (element) {\n        return element.removeAttribute(\"aria-hidden\");\n      });\n    } else {\n      document.querySelectorAll(globalElement).forEach(function (element) {\n        return element.removeAttribute(\"aria-hidden\");\n      });\n    }\n  }\n\n  globalElement = null;\n}\n/* istanbul ignore next */\n\n\nfunction log() {\n  if (process.env.NODE_ENV === \"production\") return;\n  var check = globalElement || {};\n  console.log(\"ariaAppHider ----------\");\n  console.log(check.nodeName, check.className, check.id);\n  console.log(\"end ariaAppHider ----------\");\n}\n/* eslint-enable no-console */\n\n\nfunction assertNodeList(nodeList, selector) {\n  if (!nodeList || !nodeList.length) {\n    throw new Error(\"react-modal: No elements were found for selector \" + selector + \".\");\n  }\n}\n\nfunction setElement(element) {\n  var useElement = element;\n\n  if (typeof useElement === \"string\" && _safeHTMLElement.canUseDOM) {\n    var el = document.querySelectorAll(useElement);\n    assertNodeList(el, useElement);\n    useElement = el;\n  }\n\n  globalElement = useElement || globalElement;\n  return globalElement;\n}\n\nfunction validateElement(appElement) {\n  var el = appElement || globalElement;\n\n  if (el) {\n    return Array.isArray(el) || el instanceof HTMLCollection || el instanceof NodeList ? el : [el];\n  } else {\n    (0, _warning2.default)(false, [\"react-modal: App element is not defined.\", \"Please use `Modal.setAppElement(el)` or set `appElement={el}`.\", \"This is needed so screen readers don't see main content\", \"when modal is opened. It is not recommended, but you can opt-out\", \"by setting `ariaHideApp={false}`.\"].join(\" \"));\n    return [];\n  }\n}\n\nfunction hide(appElement) {\n  var _iteratorNormalCompletion = true;\n  var _didIteratorError = false;\n  var _iteratorError = undefined;\n\n  try {\n    for (var _iterator = validateElement(appElement)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n      var el = _step.value;\n      el.setAttribute(\"aria-hidden\", \"true\");\n    }\n  } catch (err) {\n    _didIteratorError = true;\n    _iteratorError = err;\n  } finally {\n    try {\n      if (!_iteratorNormalCompletion && _iterator.return) {\n        _iterator.return();\n      }\n    } finally {\n      if (_didIteratorError) {\n        throw _iteratorError;\n      }\n    }\n  }\n}\n\nfunction show(appElement) {\n  var _iteratorNormalCompletion2 = true;\n  var _didIteratorError2 = false;\n  var _iteratorError2 = undefined;\n\n  try {\n    for (var _iterator2 = validateElement(appElement)[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n      var el = _step2.value;\n      el.removeAttribute(\"aria-hidden\");\n    }\n  } catch (err) {\n    _didIteratorError2 = true;\n    _iteratorError2 = err;\n  } finally {\n    try {\n      if (!_iteratorNormalCompletion2 && _iterator2.return) {\n        _iterator2.return();\n      }\n    } finally {\n      if (_didIteratorError2) {\n        throw _iteratorError2;\n      }\n    }\n  }\n}\n\nfunction documentNotReadyOrSSRTesting() {\n  globalElement = null;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.resetState = resetState;\nexports.log = log;\n\nvar _portalOpenInstances = require(\"./portalOpenInstances\");\n\nvar _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);\n\nfunction _interopRequireDefault(obj) {\n  return obj && obj.__esModule ? obj : {\n    default: obj\n  };\n} // Body focus trap see Issue #742\n\n\nvar before = void 0,\n    after = void 0,\n    instances = [];\n/* eslint-disable no-console */\n\n/* istanbul ignore next */\n\nfunction resetState() {\n  var _arr = [before, after];\n\n  for (var _i = 0; _i < _arr.length; _i++) {\n    var item = _arr[_i];\n    if (!item) continue;\n    item.parentNode && item.parentNode.removeChild(item);\n  }\n\n  before = after = null;\n  instances = [];\n}\n/* istanbul ignore next */\n\n\nfunction log() {\n  console.log(\"bodyTrap ----------\");\n  console.log(instances.length);\n  var _arr2 = [before, after];\n\n  for (var _i2 = 0; _i2 < _arr2.length; _i2++) {\n    var item = _arr2[_i2];\n    var check = item || {};\n    console.log(check.nodeName, check.className, check.id);\n  }\n\n  console.log(\"edn bodyTrap ----------\");\n}\n/* eslint-enable no-console */\n\n\nfunction focusContent() {\n  if (instances.length === 0) {\n    if (process.env.NODE_ENV !== \"production\") {\n      // eslint-disable-next-line no-console\n      console.warn(\"React-Modal: Open instances > 0 expected\");\n    }\n\n    return;\n  }\n\n  instances[instances.length - 1].focusContent();\n}\n\nfunction bodyTrap(eventType, openInstances) {\n  if (!before && !after) {\n    before = document.createElement(\"div\");\n    before.setAttribute(\"data-react-modal-body-trap\", \"\");\n    before.style.position = \"absolute\";\n    before.style.opacity = \"0\";\n    before.setAttribute(\"tabindex\", \"0\");\n    before.addEventListener(\"focus\", focusContent);\n    after = before.cloneNode();\n    after.addEventListener(\"focus\", focusContent);\n  }\n\n  instances = openInstances;\n\n  if (instances.length > 0) {\n    // Add focus trap\n    if (document.body.firstChild !== before) {\n      document.body.insertBefore(before, document.body.firstChild);\n    }\n\n    if (document.body.lastChild !== after) {\n      document.body.appendChild(after);\n    }\n  } else {\n    // Remove focus trap\n    if (before.parentElement) {\n      before.parentElement.removeChild(before);\n    }\n\n    if (after.parentElement) {\n      after.parentElement.removeChild(after);\n    }\n  }\n}\n\n_portalOpenInstances2.default.subscribe(bodyTrap);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nvar htmlClassList = {};\nvar docBodyClassList = {};\n/* eslint-disable no-console */\n\n/* istanbul ignore next */\n\nfunction removeClass(at, cls) {\n  at.classList.remove(cls);\n}\n/* istanbul ignore next */\n\n\nfunction resetState() {\n  var htmlElement = document.getElementsByTagName(\"html\")[0];\n\n  for (var cls in htmlClassList) {\n    removeClass(htmlElement, htmlClassList[cls]);\n  }\n\n  var body = document.body;\n\n  for (var _cls in docBodyClassList) {\n    removeClass(body, docBodyClassList[_cls]);\n  }\n\n  htmlClassList = {};\n  docBodyClassList = {};\n}\n/* istanbul ignore next */\n\n\nfunction log() {\n  if (process.env.NODE_ENV === \"production\") return;\n  var classes = document.getElementsByTagName(\"html\")[0].className;\n  var buffer = \"Show tracked classes:\\n\\n\";\n  buffer += \"<html /> (\" + classes + \"):\\n\";\n\n  for (var x in htmlClassList) {\n    buffer += \"  \" + x + \" \" + htmlClassList[x] + \"\\n\";\n  }\n\n  classes = document.body.className;\n  buffer += \"\\n\\ndoc.body (\" + classes + \"):\\n\";\n\n  for (var _x in docBodyClassList) {\n    buffer += \"  \" + _x + \" \" + docBodyClassList[_x] + \"\\n\";\n  }\n\n  buffer += \"\\n\";\n  console.log(buffer);\n}\n/* eslint-enable no-console */\n\n/**\n * Track the number of reference of a class.\n * @param {object} poll The poll to receive the reference.\n * @param {string} className The class name.\n * @return {string}\n */\n\n\nvar incrementReference = function incrementReference(poll, className) {\n  if (!poll[className]) {\n    poll[className] = 0;\n  }\n\n  poll[className] += 1;\n  return className;\n};\n/**\n * Drop the reference of a class.\n * @param {object} poll The poll to receive the reference.\n * @param {string} className The class name.\n * @return {string}\n */\n\n\nvar decrementReference = function decrementReference(poll, className) {\n  if (poll[className]) {\n    poll[className] -= 1;\n  }\n\n  return className;\n};\n/**\n * Track a class and add to the given class list.\n * @param {Object} classListRef A class list of an element.\n * @param {Object} poll         The poll to be used.\n * @param {Array}  classes      The list of classes to be tracked.\n */\n\n\nvar trackClass = function trackClass(classListRef, poll, classes) {\n  classes.forEach(function (className) {\n    incrementReference(poll, className);\n    classListRef.add(className);\n  });\n};\n/**\n * Untrack a class and remove from the given class list if the reference\n * reaches 0.\n * @param {Object} classListRef A class list of an element.\n * @param {Object} poll         The poll to be used.\n * @param {Array}  classes      The list of classes to be untracked.\n */\n\n\nvar untrackClass = function untrackClass(classListRef, poll, classes) {\n  classes.forEach(function (className) {\n    decrementReference(poll, className);\n    poll[className] === 0 && classListRef.remove(className);\n  });\n};\n/**\n * Public inferface to add classes to the document.body.\n * @param {string} bodyClass The class string to be added.\n *                           It may contain more then one class\n *                           with ' ' as separator.\n */\n\n\nvar add = exports.add = function add(element, classString) {\n  return trackClass(element.classList, element.nodeName.toLowerCase() == \"html\" ? htmlClassList : docBodyClassList, classString.split(\" \"));\n};\n/**\n * Public inferface to remove classes from the document.body.\n * @param {string} bodyClass The class string to be added.\n *                           It may contain more then one class\n *                           with ' ' as separator.\n */\n\n\nvar remove = exports.remove = function remove(element, classString) {\n  return untrackClass(element.classList, element.nodeName.toLowerCase() == \"html\" ? htmlClassList : docBodyClassList, classString.split(\" \"));\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nexports.handleBlur = handleBlur;\nexports.handleFocus = handleFocus;\nexports.markForFocusLater = markForFocusLater;\nexports.returnFocus = returnFocus;\nexports.popWithoutFocus = popWithoutFocus;\nexports.setupScopedFocus = setupScopedFocus;\nexports.teardownScopedFocus = teardownScopedFocus;\n\nvar _tabbable = require(\"../helpers/tabbable\");\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nfunction _interopRequireDefault(obj) {\n  return obj && obj.__esModule ? obj : {\n    default: obj\n  };\n}\n\nvar focusLaterElements = [];\nvar modalElement = null;\nvar needToFocus = false;\n/* eslint-disable no-console */\n\n/* istanbul ignore next */\n\nfunction resetState() {\n  focusLaterElements = [];\n}\n/* istanbul ignore next */\n\n\nfunction log() {\n  if (process.env.NODE_ENV === \"production\") return;\n  console.log(\"focusManager ----------\");\n  focusLaterElements.forEach(function (f) {\n    var check = f || {};\n    console.log(check.nodeName, check.className, check.id);\n  });\n  console.log(\"end focusManager ----------\");\n}\n/* eslint-enable no-console */\n\n\nfunction handleBlur() {\n  needToFocus = true;\n}\n\nfunction handleFocus() {\n  if (needToFocus) {\n    needToFocus = false;\n\n    if (!modalElement) {\n      return;\n    } // need to see how jQuery shims document.on('focusin') so we don't need the\n    // setTimeout, firefox doesn't support focusin, if it did, we could focus\n    // the element outside of a setTimeout. Side-effect of this implementation\n    // is that the document.body gets focus, and then we focus our element right\n    // after, seems fine.\n\n\n    setTimeout(function () {\n      if (modalElement.contains(document.activeElement)) {\n        return;\n      }\n\n      var el = (0, _tabbable2.default)(modalElement)[0] || modalElement;\n      el.focus();\n    }, 0);\n  }\n}\n\nfunction markForFocusLater() {\n  focusLaterElements.push(document.activeElement);\n}\n/* eslint-disable no-console */\n\n\nfunction returnFocus() {\n  var preventScroll = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n  var toFocus = null;\n\n  try {\n    if (focusLaterElements.length !== 0) {\n      toFocus = focusLaterElements.pop();\n      toFocus.focus({\n        preventScroll: preventScroll\n      });\n    }\n\n    return;\n  } catch (e) {\n    console.warn([\"You tried to return focus to\", toFocus, \"but it is not in the DOM anymore\"].join(\" \"));\n  }\n}\n/* eslint-enable no-console */\n\n\nfunction popWithoutFocus() {\n  focusLaterElements.length > 0 && focusLaterElements.pop();\n}\n\nfunction setupScopedFocus(element) {\n  modalElement = element;\n\n  if (window.addEventListener) {\n    window.addEventListener(\"blur\", handleBlur, false);\n    document.addEventListener(\"focus\", handleFocus, true);\n  } else {\n    window.attachEvent(\"onBlur\", handleBlur);\n    document.attachEvent(\"onFocus\", handleFocus);\n  }\n}\n\nfunction teardownScopedFocus() {\n  modalElement = null;\n\n  if (window.addEventListener) {\n    window.removeEventListener(\"blur\", handleBlur);\n    document.removeEventListener(\"focus\", handleFocus);\n  } else {\n    window.detachEvent(\"onBlur\", handleBlur);\n    document.detachEvent(\"onFocus\", handleFocus);\n  }\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.log = log;\nexports.resetState = resetState;\n\nfunction _classCallCheck(instance, Constructor) {\n  if (!(instance instanceof Constructor)) {\n    throw new TypeError(\"Cannot call a class as a function\");\n  }\n} // Tracks portals that are open and emits events to subscribers\n\n\nvar PortalOpenInstances = function PortalOpenInstances() {\n  var _this = this;\n\n  _classCallCheck(this, PortalOpenInstances);\n\n  this.register = function (openInstance) {\n    if (_this.openInstances.indexOf(openInstance) !== -1) {\n      if (process.env.NODE_ENV !== \"production\") {\n        // eslint-disable-next-line no-console\n        console.warn(\"React-Modal: Cannot register modal instance that's already open\");\n      }\n\n      return;\n    }\n\n    _this.openInstances.push(openInstance);\n\n    _this.emit(\"register\");\n  };\n\n  this.deregister = function (openInstance) {\n    var index = _this.openInstances.indexOf(openInstance);\n\n    if (index === -1) {\n      if (process.env.NODE_ENV !== \"production\") {\n        // eslint-disable-next-line no-console\n        console.warn(\"React-Modal: Unable to deregister \" + openInstance + \" as \" + \"it was never registered\");\n      }\n\n      return;\n    }\n\n    _this.openInstances.splice(index, 1);\n\n    _this.emit(\"deregister\");\n  };\n\n  this.subscribe = function (callback) {\n    _this.subscribers.push(callback);\n  };\n\n  this.emit = function (eventType) {\n    _this.subscribers.forEach(function (subscriber) {\n      return subscriber(eventType, // shallow copy to avoid accidental mutation\n      _this.openInstances.slice());\n    });\n  };\n\n  this.openInstances = [];\n  this.subscribers = [];\n};\n\nvar portalOpenInstances = new PortalOpenInstances();\n/* eslint-disable no-console */\n\n/* istanbul ignore next */\n\nfunction log() {\n  console.log(\"portalOpenInstances ----------\");\n  console.log(portalOpenInstances.openInstances.length);\n  portalOpenInstances.openInstances.forEach(function (p) {\n    return console.log(p);\n  });\n  console.log(\"end portalOpenInstances ----------\");\n}\n/* istanbul ignore next */\n\n\nfunction resetState() {\n  portalOpenInstances = new PortalOpenInstances();\n}\n/* eslint-enable no-console */\n\n\nexports.default = portalOpenInstances;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.canUseDOM = exports.SafeNodeList = exports.SafeHTMLCollection = undefined;\n\nvar _exenv = require(\"exenv\");\n\nvar _exenv2 = _interopRequireDefault(_exenv);\n\nfunction _interopRequireDefault(obj) {\n  return obj && obj.__esModule ? obj : {\n    default: obj\n  };\n}\n\nvar EE = _exenv2.default;\nvar SafeHTMLElement = EE.canUseDOM ? window.HTMLElement : {};\nvar SafeHTMLCollection = exports.SafeHTMLCollection = EE.canUseDOM ? window.HTMLCollection : {};\nvar SafeNodeList = exports.SafeNodeList = EE.canUseDOM ? window.NodeList : {};\nvar canUseDOM = exports.canUseDOM = EE.canUseDOM;\nexports.default = SafeHTMLElement;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.default = scopeTab;\n\nvar _tabbable = require(\"./tabbable\");\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nfunction _interopRequireDefault(obj) {\n  return obj && obj.__esModule ? obj : {\n    default: obj\n  };\n}\n\nfunction scopeTab(node, event) {\n  var tabbable = (0, _tabbable2.default)(node);\n\n  if (!tabbable.length) {\n    // Do nothing, since there are no elements that can receive focus.\n    event.preventDefault();\n    return;\n  }\n\n  var target = void 0;\n  var shiftKey = event.shiftKey;\n  var head = tabbable[0];\n  var tail = tabbable[tabbable.length - 1]; // proceed with default browser behavior on tab.\n  // Focus on last element on shift + tab.\n\n  if (node === document.activeElement) {\n    if (!shiftKey) return;\n    target = tail;\n  }\n\n  if (tail === document.activeElement && !shiftKey) {\n    target = head;\n  }\n\n  if (head === document.activeElement && shiftKey) {\n    target = tail;\n  }\n\n  if (target) {\n    event.preventDefault();\n    target.focus();\n    return;\n  } // Safari radio issue.\n  //\n  // Safari does not move the focus to the radio button,\n  // so we need to force it to really walk through all elements.\n  //\n  // This is very error prone, since we are trying to guess\n  // if it is a safari browser from the first occurence between\n  // chrome or safari.\n  //\n  // The chrome user agent contains the first ocurrence\n  // as the 'chrome/version' and later the 'safari/version'.\n\n\n  var checkSafari = /(\\bChrome\\b|\\bSafari\\b)\\//.exec(navigator.userAgent);\n  var isSafariDesktop = checkSafari != null && checkSafari[1] != \"Chrome\" && /\\biPod\\b|\\biPad\\b/g.exec(navigator.userAgent) == null; // If we are not in safari desktop, let the browser control\n  // the focus\n\n  if (!isSafariDesktop) return;\n  var x = tabbable.indexOf(document.activeElement);\n\n  if (x > -1) {\n    x += shiftKey ? -1 : 1;\n  }\n\n  target = tabbable[x]; // If the tabbable element does not exist,\n  // focus head/tail based on shiftKey\n\n  if (typeof target === \"undefined\") {\n    event.preventDefault();\n    target = shiftKey ? tail : head;\n    target.focus();\n    return;\n  }\n\n  event.preventDefault();\n  target.focus();\n}\n\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.default = findTabbableDescendants;\n/*!\n * Adapted from jQuery UI core\n *\n * http://jqueryui.com\n *\n * Copyright 2014 jQuery Foundation and other contributors\n * Released under the MIT license.\n * http://jquery.org/license\n *\n * http://api.jqueryui.com/category/ui-core/\n */\n\nvar tabbableNode = /input|select|textarea|button|object/;\n\nfunction hidesContents(element) {\n  var zeroSize = element.offsetWidth <= 0 && element.offsetHeight <= 0; // If the node is empty, this is good enough\n\n  if (zeroSize && !element.innerHTML) return true;\n\n  try {\n    // Otherwise we need to check some styles\n    var style = window.getComputedStyle(element);\n    return zeroSize ? style.getPropertyValue(\"overflow\") !== \"visible\" || // if 'overflow: visible' set, check if there is actually any overflow\n    element.scrollWidth <= 0 && element.scrollHeight <= 0 : style.getPropertyValue(\"display\") == \"none\";\n  } catch (exception) {\n    // eslint-disable-next-line no-console\n    console.warn(\"Failed to inspect element style\");\n    return false;\n  }\n}\n\nfunction visible(element) {\n  var parentElement = element;\n\n  while (parentElement) {\n    if (parentElement === document.body) break;\n    if (hidesContents(parentElement)) return false;\n    parentElement = parentElement.parentNode;\n  }\n\n  return true;\n}\n\nfunction focusable(element, isTabIndexNotNaN) {\n  var nodeName = element.nodeName.toLowerCase();\n  var res = tabbableNode.test(nodeName) && !element.disabled || (nodeName === \"a\" ? element.href || isTabIndexNotNaN : isTabIndexNotNaN);\n  return res && visible(element);\n}\n\nfunction tabbable(element) {\n  var tabIndex = element.getAttribute(\"tabindex\");\n  if (tabIndex === null) tabIndex = undefined;\n  var isTabIndexNaN = isNaN(tabIndex);\n  return (isTabIndexNaN || tabIndex >= 0) && focusable(element, !isTabIndexNaN);\n}\n\nfunction findTabbableDescendants(element) {\n  return [].slice.call(element.querySelectorAll(\"*\"), 0).filter(tabbable);\n}\n\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\n\nvar _Modal = require(\"./components/Modal\");\n\nvar _Modal2 = _interopRequireDefault(_Modal);\n\nfunction _interopRequireDefault(obj) {\n  return obj && obj.__esModule ? obj : {\n    default: obj\n  };\n}\n\nexports.default = _Modal2.default;\nmodule.exports = exports[\"default\"];",";\n\n(function (name, root, factory) {\n  if (typeof exports === 'object') {\n    module.exports = factory();\n    module.exports['default'] = factory();\n  }\n  /* istanbul ignore next */\n  else if (typeof define === 'function' && define.amd) {\n    define(factory);\n  } else {\n    root[name] = factory();\n  }\n})('slugify', this, function () {\n  var charMap = JSON.parse('{\"$\":\"dollar\",\"%\":\"percent\",\"&\":\"and\",\"<\":\"less\",\">\":\"greater\",\"|\":\"or\",\"¢\":\"cent\",\"£\":\"pound\",\"¤\":\"currency\",\"¥\":\"yen\",\"©\":\"(c)\",\"ª\":\"a\",\"®\":\"(r)\",\"º\":\"o\",\"À\":\"A\",\"Á\":\"A\",\"Â\":\"A\",\"Ã\":\"A\",\"Ä\":\"A\",\"Å\":\"A\",\"Æ\":\"AE\",\"Ç\":\"C\",\"È\":\"E\",\"É\":\"E\",\"Ê\":\"E\",\"Ë\":\"E\",\"Ì\":\"I\",\"Í\":\"I\",\"Î\":\"I\",\"Ï\":\"I\",\"Ð\":\"D\",\"Ñ\":\"N\",\"Ò\":\"O\",\"Ó\":\"O\",\"Ô\":\"O\",\"Õ\":\"O\",\"Ö\":\"O\",\"Ø\":\"O\",\"Ù\":\"U\",\"Ú\":\"U\",\"Û\":\"U\",\"Ü\":\"U\",\"Ý\":\"Y\",\"Þ\":\"TH\",\"ß\":\"ss\",\"à\":\"a\",\"á\":\"a\",\"â\":\"a\",\"ã\":\"a\",\"ä\":\"a\",\"å\":\"a\",\"æ\":\"ae\",\"ç\":\"c\",\"è\":\"e\",\"é\":\"e\",\"ê\":\"e\",\"ë\":\"e\",\"ì\":\"i\",\"í\":\"i\",\"î\":\"i\",\"ï\":\"i\",\"ð\":\"d\",\"ñ\":\"n\",\"ò\":\"o\",\"ó\":\"o\",\"ô\":\"o\",\"õ\":\"o\",\"ö\":\"o\",\"ø\":\"o\",\"ù\":\"u\",\"ú\":\"u\",\"û\":\"u\",\"ü\":\"u\",\"ý\":\"y\",\"þ\":\"th\",\"ÿ\":\"y\",\"Ā\":\"A\",\"ā\":\"a\",\"Ă\":\"A\",\"ă\":\"a\",\"Ą\":\"A\",\"ą\":\"a\",\"Ć\":\"C\",\"ć\":\"c\",\"Č\":\"C\",\"č\":\"c\",\"Ď\":\"D\",\"ď\":\"d\",\"Đ\":\"DJ\",\"đ\":\"dj\",\"Ē\":\"E\",\"ē\":\"e\",\"Ė\":\"E\",\"ė\":\"e\",\"Ę\":\"e\",\"ę\":\"e\",\"Ě\":\"E\",\"ě\":\"e\",\"Ğ\":\"G\",\"ğ\":\"g\",\"Ģ\":\"G\",\"ģ\":\"g\",\"Ĩ\":\"I\",\"ĩ\":\"i\",\"Ī\":\"i\",\"ī\":\"i\",\"Į\":\"I\",\"į\":\"i\",\"İ\":\"I\",\"ı\":\"i\",\"Ķ\":\"k\",\"ķ\":\"k\",\"Ļ\":\"L\",\"ļ\":\"l\",\"Ľ\":\"L\",\"ľ\":\"l\",\"Ł\":\"L\",\"ł\":\"l\",\"Ń\":\"N\",\"ń\":\"n\",\"Ņ\":\"N\",\"ņ\":\"n\",\"Ň\":\"N\",\"ň\":\"n\",\"Ō\":\"O\",\"ō\":\"o\",\"Ő\":\"O\",\"ő\":\"o\",\"Œ\":\"OE\",\"œ\":\"oe\",\"Ŕ\":\"R\",\"ŕ\":\"r\",\"Ř\":\"R\",\"ř\":\"r\",\"Ś\":\"S\",\"ś\":\"s\",\"Ş\":\"S\",\"ş\":\"s\",\"Š\":\"S\",\"š\":\"s\",\"Ţ\":\"T\",\"ţ\":\"t\",\"Ť\":\"T\",\"ť\":\"t\",\"Ũ\":\"U\",\"ũ\":\"u\",\"Ū\":\"u\",\"ū\":\"u\",\"Ů\":\"U\",\"ů\":\"u\",\"Ű\":\"U\",\"ű\":\"u\",\"Ų\":\"U\",\"ų\":\"u\",\"Ŵ\":\"W\",\"ŵ\":\"w\",\"Ŷ\":\"Y\",\"ŷ\":\"y\",\"Ÿ\":\"Y\",\"Ź\":\"Z\",\"ź\":\"z\",\"Ż\":\"Z\",\"ż\":\"z\",\"Ž\":\"Z\",\"ž\":\"z\",\"Ə\":\"E\",\"ƒ\":\"f\",\"Ơ\":\"O\",\"ơ\":\"o\",\"Ư\":\"U\",\"ư\":\"u\",\"Lj\":\"LJ\",\"lj\":\"lj\",\"Nj\":\"NJ\",\"nj\":\"nj\",\"Ș\":\"S\",\"ș\":\"s\",\"Ț\":\"T\",\"ț\":\"t\",\"ə\":\"e\",\"˚\":\"o\",\"Ά\":\"A\",\"Έ\":\"E\",\"Ή\":\"H\",\"Ί\":\"I\",\"Ό\":\"O\",\"Ύ\":\"Y\",\"Ώ\":\"W\",\"ΐ\":\"i\",\"Α\":\"A\",\"Β\":\"B\",\"Γ\":\"G\",\"Δ\":\"D\",\"Ε\":\"E\",\"Ζ\":\"Z\",\"Η\":\"H\",\"Θ\":\"8\",\"Ι\":\"I\",\"Κ\":\"K\",\"Λ\":\"L\",\"Μ\":\"M\",\"Ν\":\"N\",\"Ξ\":\"3\",\"Ο\":\"O\",\"Π\":\"P\",\"Ρ\":\"R\",\"Σ\":\"S\",\"Τ\":\"T\",\"Υ\":\"Y\",\"Φ\":\"F\",\"Χ\":\"X\",\"Ψ\":\"PS\",\"Ω\":\"W\",\"Ϊ\":\"I\",\"Ϋ\":\"Y\",\"ά\":\"a\",\"έ\":\"e\",\"ή\":\"h\",\"ί\":\"i\",\"ΰ\":\"y\",\"α\":\"a\",\"β\":\"b\",\"γ\":\"g\",\"δ\":\"d\",\"ε\":\"e\",\"ζ\":\"z\",\"η\":\"h\",\"θ\":\"8\",\"ι\":\"i\",\"κ\":\"k\",\"λ\":\"l\",\"μ\":\"m\",\"ν\":\"n\",\"ξ\":\"3\",\"ο\":\"o\",\"π\":\"p\",\"ρ\":\"r\",\"ς\":\"s\",\"σ\":\"s\",\"τ\":\"t\",\"υ\":\"y\",\"φ\":\"f\",\"χ\":\"x\",\"ψ\":\"ps\",\"ω\":\"w\",\"ϊ\":\"i\",\"ϋ\":\"y\",\"ό\":\"o\",\"ύ\":\"y\",\"ώ\":\"w\",\"Ё\":\"Yo\",\"Ђ\":\"DJ\",\"Є\":\"Ye\",\"І\":\"I\",\"Ї\":\"Yi\",\"Ј\":\"J\",\"Љ\":\"LJ\",\"Њ\":\"NJ\",\"Ћ\":\"C\",\"Џ\":\"DZ\",\"А\":\"A\",\"Б\":\"B\",\"В\":\"V\",\"Г\":\"G\",\"Д\":\"D\",\"Е\":\"E\",\"Ж\":\"Zh\",\"З\":\"Z\",\"И\":\"I\",\"Й\":\"J\",\"К\":\"K\",\"Л\":\"L\",\"М\":\"M\",\"Н\":\"N\",\"О\":\"O\",\"П\":\"P\",\"Р\":\"R\",\"С\":\"S\",\"Т\":\"T\",\"У\":\"U\",\"Ф\":\"F\",\"Х\":\"H\",\"Ц\":\"C\",\"Ч\":\"Ch\",\"Ш\":\"Sh\",\"Щ\":\"Sh\",\"Ъ\":\"U\",\"Ы\":\"Y\",\"Ь\":\"\",\"Э\":\"E\",\"Ю\":\"Yu\",\"Я\":\"Ya\",\"а\":\"a\",\"б\":\"b\",\"в\":\"v\",\"г\":\"g\",\"д\":\"d\",\"е\":\"e\",\"ж\":\"zh\",\"з\":\"z\",\"и\":\"i\",\"й\":\"j\",\"к\":\"k\",\"л\":\"l\",\"м\":\"m\",\"н\":\"n\",\"о\":\"o\",\"п\":\"p\",\"р\":\"r\",\"с\":\"s\",\"т\":\"t\",\"у\":\"u\",\"ф\":\"f\",\"х\":\"h\",\"ц\":\"c\",\"ч\":\"ch\",\"ш\":\"sh\",\"щ\":\"sh\",\"ъ\":\"u\",\"ы\":\"y\",\"ь\":\"\",\"э\":\"e\",\"ю\":\"yu\",\"я\":\"ya\",\"ё\":\"yo\",\"ђ\":\"dj\",\"є\":\"ye\",\"і\":\"i\",\"ї\":\"yi\",\"ј\":\"j\",\"љ\":\"lj\",\"њ\":\"nj\",\"ћ\":\"c\",\"ѝ\":\"u\",\"џ\":\"dz\",\"Ґ\":\"G\",\"ґ\":\"g\",\"Ғ\":\"GH\",\"ғ\":\"gh\",\"Қ\":\"KH\",\"қ\":\"kh\",\"Ң\":\"NG\",\"ң\":\"ng\",\"Ү\":\"UE\",\"ү\":\"ue\",\"Ұ\":\"U\",\"ұ\":\"u\",\"Һ\":\"H\",\"һ\":\"h\",\"Ә\":\"AE\",\"ә\":\"ae\",\"Ө\":\"OE\",\"ө\":\"oe\",\"Ա\":\"A\",\"Բ\":\"B\",\"Գ\":\"G\",\"Դ\":\"D\",\"Ե\":\"E\",\"Զ\":\"Z\",\"Է\":\"E\\'\",\"Ը\":\"Y\\'\",\"Թ\":\"T\\'\",\"Ժ\":\"JH\",\"Ի\":\"I\",\"Լ\":\"L\",\"Խ\":\"X\",\"Ծ\":\"C\\'\",\"Կ\":\"K\",\"Հ\":\"H\",\"Ձ\":\"D\\'\",\"Ղ\":\"GH\",\"Ճ\":\"TW\",\"Մ\":\"M\",\"Յ\":\"Y\",\"Ն\":\"N\",\"Շ\":\"SH\",\"Չ\":\"CH\",\"Պ\":\"P\",\"Ջ\":\"J\",\"Ռ\":\"R\\'\",\"Ս\":\"S\",\"Վ\":\"V\",\"Տ\":\"T\",\"Ր\":\"R\",\"Ց\":\"C\",\"Փ\":\"P\\'\",\"Ք\":\"Q\\'\",\"Օ\":\"O\\'\\'\",\"Ֆ\":\"F\",\"և\":\"EV\",\"฿\":\"baht\",\"ა\":\"a\",\"ბ\":\"b\",\"გ\":\"g\",\"დ\":\"d\",\"ე\":\"e\",\"ვ\":\"v\",\"ზ\":\"z\",\"თ\":\"t\",\"ი\":\"i\",\"კ\":\"k\",\"ლ\":\"l\",\"მ\":\"m\",\"ნ\":\"n\",\"ო\":\"o\",\"პ\":\"p\",\"ჟ\":\"zh\",\"რ\":\"r\",\"ს\":\"s\",\"ტ\":\"t\",\"უ\":\"u\",\"ფ\":\"f\",\"ქ\":\"k\",\"ღ\":\"gh\",\"ყ\":\"q\",\"შ\":\"sh\",\"ჩ\":\"ch\",\"ც\":\"ts\",\"ძ\":\"dz\",\"წ\":\"ts\",\"ჭ\":\"ch\",\"ხ\":\"kh\",\"ჯ\":\"j\",\"ჰ\":\"h\",\"Ẁ\":\"W\",\"ẁ\":\"w\",\"Ẃ\":\"W\",\"ẃ\":\"w\",\"Ẅ\":\"W\",\"ẅ\":\"w\",\"ẞ\":\"SS\",\"Ạ\":\"A\",\"ạ\":\"a\",\"Ả\":\"A\",\"ả\":\"a\",\"Ấ\":\"A\",\"ấ\":\"a\",\"Ầ\":\"A\",\"ầ\":\"a\",\"Ẩ\":\"A\",\"ẩ\":\"a\",\"Ẫ\":\"A\",\"ẫ\":\"a\",\"Ậ\":\"A\",\"ậ\":\"a\",\"Ắ\":\"A\",\"ắ\":\"a\",\"Ằ\":\"A\",\"ằ\":\"a\",\"Ẳ\":\"A\",\"ẳ\":\"a\",\"Ẵ\":\"A\",\"ẵ\":\"a\",\"Ặ\":\"A\",\"ặ\":\"a\",\"Ẹ\":\"E\",\"ẹ\":\"e\",\"Ẻ\":\"E\",\"ẻ\":\"e\",\"Ẽ\":\"E\",\"ẽ\":\"e\",\"Ế\":\"E\",\"ế\":\"e\",\"Ề\":\"E\",\"ề\":\"e\",\"Ể\":\"E\",\"ể\":\"e\",\"Ễ\":\"E\",\"ễ\":\"e\",\"Ệ\":\"E\",\"ệ\":\"e\",\"Ỉ\":\"I\",\"ỉ\":\"i\",\"Ị\":\"I\",\"ị\":\"i\",\"Ọ\":\"O\",\"ọ\":\"o\",\"Ỏ\":\"O\",\"ỏ\":\"o\",\"Ố\":\"O\",\"ố\":\"o\",\"Ồ\":\"O\",\"ồ\":\"o\",\"Ổ\":\"O\",\"ổ\":\"o\",\"Ỗ\":\"O\",\"ỗ\":\"o\",\"Ộ\":\"O\",\"ộ\":\"o\",\"Ớ\":\"O\",\"ớ\":\"o\",\"Ờ\":\"O\",\"ờ\":\"o\",\"Ở\":\"O\",\"ở\":\"o\",\"Ỡ\":\"O\",\"ỡ\":\"o\",\"Ợ\":\"O\",\"ợ\":\"o\",\"Ụ\":\"U\",\"ụ\":\"u\",\"Ủ\":\"U\",\"ủ\":\"u\",\"Ứ\":\"U\",\"ứ\":\"u\",\"Ừ\":\"U\",\"ừ\":\"u\",\"Ử\":\"U\",\"ử\":\"u\",\"Ữ\":\"U\",\"ữ\":\"u\",\"Ự\":\"U\",\"ự\":\"u\",\"Ỳ\":\"Y\",\"ỳ\":\"y\",\"Ỵ\":\"Y\",\"ỵ\":\"y\",\"Ỷ\":\"Y\",\"ỷ\":\"y\",\"Ỹ\":\"Y\",\"ỹ\":\"y\",\"–\":\"-\",\"‘\":\"\\'\",\"’\":\"\\'\",\"“\":\"\\\\\\\"\",\"”\":\"\\\\\\\"\",\"„\":\"\\\\\\\"\",\"†\":\"+\",\"•\":\"*\",\"…\":\"...\",\"₠\":\"ecu\",\"₢\":\"cruzeiro\",\"₣\":\"french franc\",\"₤\":\"lira\",\"₥\":\"mill\",\"₦\":\"naira\",\"₧\":\"peseta\",\"₨\":\"rupee\",\"₩\":\"won\",\"₪\":\"new shequel\",\"₫\":\"dong\",\"€\":\"euro\",\"₭\":\"kip\",\"₮\":\"tugrik\",\"₯\":\"drachma\",\"₰\":\"penny\",\"₱\":\"peso\",\"₲\":\"guarani\",\"₳\":\"austral\",\"₴\":\"hryvnia\",\"₵\":\"cedi\",\"₸\":\"kazakhstani tenge\",\"₹\":\"indian rupee\",\"₺\":\"turkish lira\",\"₽\":\"russian ruble\",\"₿\":\"bitcoin\",\"℠\":\"sm\",\"™\":\"tm\",\"∂\":\"d\",\"∆\":\"delta\",\"∑\":\"sum\",\"∞\":\"infinity\",\"♥\":\"love\",\"元\":\"yuan\",\"円\":\"yen\",\"﷼\":\"rial\"}');\n  var locales = JSON.parse('{\"de\":{\"Ä\":\"AE\",\"ä\":\"ae\",\"Ö\":\"OE\",\"ö\":\"oe\",\"Ü\":\"UE\",\"ü\":\"ue\",\"%\":\"prozent\",\"&\":\"und\",\"|\":\"oder\",\"∑\":\"summe\",\"∞\":\"unendlich\",\"♥\":\"liebe\"},\"es\":{\"%\":\"por ciento\",\"&\":\"y\",\"<\":\"menor que\",\">\":\"mayor que\",\"|\":\"o\",\"¢\":\"centavos\",\"£\":\"libras\",\"¤\":\"moneda\",\"₣\":\"francos\",\"∑\":\"suma\",\"∞\":\"infinito\",\"♥\":\"amor\"},\"fr\":{\"%\":\"pourcent\",\"&\":\"et\",\"<\":\"plus petit\",\">\":\"plus grand\",\"|\":\"ou\",\"¢\":\"centime\",\"£\":\"livre\",\"¤\":\"devise\",\"₣\":\"franc\",\"∑\":\"somme\",\"∞\":\"infini\",\"♥\":\"amour\"},\"pt\":{\"%\":\"porcento\",\"&\":\"e\",\"<\":\"menor\",\">\":\"maior\",\"|\":\"ou\",\"¢\":\"centavo\",\"∑\":\"soma\",\"£\":\"libra\",\"∞\":\"infinito\",\"♥\":\"amor\"},\"uk\":{\"И\":\"Y\",\"и\":\"y\",\"Й\":\"Y\",\"й\":\"y\",\"Ц\":\"Ts\",\"ц\":\"ts\",\"Х\":\"Kh\",\"х\":\"kh\",\"Щ\":\"Shch\",\"щ\":\"shch\",\"Г\":\"H\",\"г\":\"h\"},\"vi\":{\"Đ\":\"D\",\"đ\":\"d\"}}');\n\n  function replace(string, options) {\n    if (typeof string !== 'string') {\n      throw new Error('slugify: string argument expected');\n    }\n\n    options = typeof options === 'string' ? {\n      replacement: options\n    } : options || {};\n    var locale = locales[options.locale] || {};\n    var replacement = options.replacement === undefined ? '-' : options.replacement;\n    var trim = options.trim === undefined ? true : options.trim;\n    var slug = string.normalize().split('') // replace characters based on charMap\n    .reduce(function (result, ch) {\n      return result + (locale[ch] || charMap[ch] || (ch === replacement ? ' ' : ch)).replace(options.remove || /[^\\w\\s$*_+~.()'\"!\\-:@]+/g, '');\n    }, '');\n\n    if (options.strict) {\n      slug = slug.replace(/[^A-Za-z0-9\\s]/g, '');\n    }\n\n    if (trim) {\n      slug = slug.trim();\n    } // Replace spaces with replacement character, treating multiple consecutive\n    // spaces as a single space.\n\n\n    slug = slug.replace(/\\s+/g, replacement);\n\n    if (options.lower) {\n      slug = slug.toLowerCase();\n    }\n\n    return slug;\n  }\n\n  replace.extend = function (customMap) {\n    Object.assign(charMap, customMap);\n  };\n\n  return replace;\n});","import React, { useState, useEffect, useRef } from \"react\"\nimport VisibilitySensor from \"react-visibility-sensor\"\nimport AppendixItems from \"../data/appendix.json\"\nimport IconAppendix from \"../images/appendix.inline.svg\"\nimport IconClose from \"../images/close.inline.svg\"\nimport IconExternalLink from \"../components/svg/icon-external-link\"\nimport Modal from \"react-modal\"\nimport { toast } from \"react-toastify\"\nimport slugify from \"slugify\"\n\nModal.setAppElement(\"#___gatsby\")\n\nexport const Appendix = ({ page }) => {\n  const [active, setActive] = useState(false)\n  const appendixButton = useRef()\n\n  const toggleOverlay = () => {\n    setActive(!active)\n    toast.dismiss()\n  }\n\n  const pageData = AppendixItems.find(obj => {\n    return obj.page === page\n  })\n\n  // Simple listener to close overlay on escape key hit\n  function handleKeydown(e) {\n    if (e.keyCode === 27 && active) {\n      toggleOverlay()\n    }\n  }\n\n  useEffect(() => {\n    document.addEventListener(\"keydown\", handleKeydown)\n    return () => {\n      document.removeEventListener(\"keydown\", handleKeydown)\n    }\n  })\n\n  return (\n    <>\n      <Modal\n        isOpen={active}\n        overlayClassName=\"overlay appendix__overlay\"\n        className=\"overlay__content\"\n        bodyOpenClassName=\"util__body-lock\"\n      >\n        <header>\n          <h3 className=\"title--xl md:title--xxl util__text-centered\">\n            Further Reading\n          </h3>\n        </header>\n        <ul>\n          {pageData.items.map((item, index) => {\n            return (\n              <li key={index}>\n                <a href={item.href}>\n                  <IconExternalLink />\n                  <span dangerouslySetInnerHTML={{ __html: item.text }}></span>\n                </a>\n              </li>\n            )\n          })}\n        </ul>\n\n        <button\n          className=\"appendix__button appendix__button--active\"\n          aria-label=\"Close Further Reading list\"\n          onClick={toggleOverlay}\n          aria-haspopup=\"true\"\n          aria-owns=\"appendix__overlay\"\n        >\n          <IconClose />\n        </button>\n      </Modal>\n\n      <div className=\"appendix\">\n        {!active && (\n          <button\n            ref={appendixButton}\n            className=\"appendix__button\"\n            aria-label=\"Open Further Reading list\"\n            onClick={toggleOverlay}\n            aria-haspopup=\"true\"\n          >\n            <IconAppendix />\n          </button>\n        )}\n      </div>\n    </>\n  )\n}\n\nexport const AppendixWaypoint = ({ id, page }) => {\n  const pageData = AppendixItems.find(obj => {\n    return obj.page === page\n  })\n\n  const appendixData = pageData.items.find(item => {\n    return item.id === id\n  })\n\n  return (\n    <VisibilitySensor\n      onChange={isVisible => {\n        if (isVisible) {\n          const Message = () => (\n            <div className=\"appendix__bubble\">\n              <header>Further Reading</header>\n              <a\n                href={appendixData.href}\n                dangerouslySetInnerHTML={{ __html: appendixData.text }}\n              ></a>\n            </div>\n          )\n\n          toast.info(<Message />, {\n            position: toast.POSITION.BOTTOM_RIGHT,\n            toastId: slugify(appendixData.text),\n          })\n        } else {\n          toast.dismiss(slugify(appendixData.text))\n          toast.clearWaitingQueue()\n        }\n      }}\n    >\n      <p\n        className=\"appendix__waypoint\"\n        aria-controls=\"appendix__bubble\"\n        aria-hidden=\"true\"\n      ></p>\n    </VisibilitySensor>\n  )\n}\n","import React, { useState } from \"react\"\nimport Image from \"../components/image\"\nimport VisibilitySensor from \"react-visibility-sensor\"\n\n/* Notes: \nVideos should placed in the `public > video` folder and referenced like '/video/covid-19/example.mp4'\n*/\n\nexport default function Hero({ video, image, title, text }) {\n  const [loaded, setLoaded] = useState(false)\n  const prefersReducedMotion =\n    typeof window !== \"undefined\"\n      ? window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches\n      : false\n\n  // Only play the animation once based on the 'loaded' state\n  const onChange = isVisible => {\n    isVisible ? setLoaded(true) : setLoaded(false)\n  }\n  return (\n    <section className={video ? `hero hero--video` : `hero`}>\n      {title ? (\n        <header>\n          <h1 className=\"hero__title\">{title}</h1>{\" \"}\n          {text ? <p className=\"hero__subtitle\">{text}</p> : null}\n        </header>\n      ) : null}\n      {video || image ? (\n        <VisibilitySensor\n          onChange={onChange}\n          active={!loaded}\n          partialVisibility={true}\n          offset={{ bottom: 200 }}\n        >\n          <div\n            className={`hero__media ${\n              loaded ? \"hero__media--show\" : \"hero__media--hidden\"\n            }`}\n          >\n            {video && prefersReducedMotion && <Image path={image} />}\n            {video && !prefersReducedMotion ? (\n              <>\n                <video\n                  src={video}\n                  muted\n                  autoPlay\n                  loop\n                  playsInline\n                  controls\n                  className=\"util__desktop-only\"\n                  controlsList=\"nofullscreen nodownload\"\n                ></video>\n                <Image className=\"util__mobile-only\" path={image} />\n              </>\n            ) : image ? (\n              <Image path={image} />\n            ) : null}\n          </div>\n        </VisibilitySensor>\n      ) : null}\n    </section>\n  )\n}\n","import React from \"react\"\n\nexport default function IconExternalLink() {\n  return (\n    <svg\n      width=\"14\"\n      height=\"14\"\n      viewBox=\"0 0 14 14\"\n      xmlns=\"https://www.w3.org/2000/svg\"\n    >\n      <path d=\"M8 1C8 0.447715 8.44771 0 9 0H13C13.5523 0 14 0.447715 14 1V5C14 5.55228 13.5523 6 13 6C12.4477 6 12 5.55228 12 5V3.41356L6.37312 9.04044C5.9826 9.43096 5.34943 9.43096 4.95891 9.04044C4.56838 8.64992 4.56838 8.01675 4.95891 7.62623L10.5851 2H9C8.44771 2 8 1.55228 8 1ZM2.33333 4C2.24493 4 2.16014 4.03512 2.09763 4.09763C2.03512 4.16014 2 4.24493 2 4.33333V11.6667C2 11.7551 2.03512 11.8399 2.09763 11.9024C2.16014 11.9649 2.24493 12 2.33333 12H9.66667C9.75507 12 9.83986 11.9649 9.90237 11.9024C9.96488 11.8399 10 11.7551 10 11.6667V7.66667C10 7.11438 10.4477 6.66667 11 6.66667C11.5523 6.66667 12 7.11438 12 7.66667V11.6667C12 12.2855 11.7542 12.879 11.3166 13.3166C10.879 13.7542 10.2855 14 9.66667 14H2.33333C1.71449 14 1.121 13.7542 0.683417 13.3166C0.245833 12.879 0 12.2855 0 11.6667V4.33333C0 3.7145 0.245832 3.121 0.683417 2.68342C1.121 2.24583 1.7145 2 2.33333 2H6.33333C6.88562 2 7.33333 2.44772 7.33333 3C7.33333 3.55228 6.88562 4 6.33333 4H2.33333Z\" />\n    </svg>\n  )\n}\n","var React = require('react');\n\nfunction AppendixInline (props) {\n    return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M9 1H28.5\",\"stroke\":\"white\",\"strokeWidth\":\"2\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M9 10H28.5\",\"stroke\":\"white\",\"strokeWidth\":\"2\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"key\":1}),React.createElement(\"path\",{\"d\":\"M9 19H28.5\",\"stroke\":\"white\",\"strokeWidth\":\"2\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"key\":2}),React.createElement(\"path\",{\"d\":\"M1.5 1H1.515\",\"stroke\":\"white\",\"strokeWidth\":\"2\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"key\":3}),React.createElement(\"path\",{\"d\":\"M1.5 10H1.515\",\"stroke\":\"white\",\"strokeWidth\":\"2\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"key\":4}),React.createElement(\"path\",{\"d\":\"M1.5 19H1.515\",\"stroke\":\"white\",\"strokeWidth\":\"2\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"key\":5})]);\n}\n\nAppendixInline.defaultProps = {\"width\":\"30\",\"height\":\"20\",\"viewBox\":\"0 0 30 20\",\"fill\":\"none\"};\n\nmodule.exports = AppendixInline;\n\nAppendixInline.default = AppendixInline;\n","var React = require('react');\n\nfunction CloseInline (props) {\n    return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M18.4006 1.60001L1.60059 18.4\",\"stroke\":\"currentColor\",\"strokeWidth\":\"2\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M1.60059 1.60001L18.4006 18.4\",\"stroke\":\"currentColor\",\"strokeWidth\":\"2\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"key\":1})]);\n}\n\nCloseInline.defaultProps = {\"width\":\"20\",\"height\":\"20\",\"viewBox\":\"0 0 20 20\",\"fill\":\"none\"};\n\nmodule.exports = CloseInline;\n\nCloseInline.default = CloseInline;\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"],"names":["canUseDOM","window","document","createElement","ExecutionEnvironment","canUseWorkers","Worker","canUseEventListeners","addEventListener","attachEvent","canUseViewport","screen","Object","defineProperty","exports","value","bodyOpenClassName","portalClassName","undefined","_extends","assign","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","_createClass","defineProperties","props","descriptor","enumerable","configurable","writable","Constructor","protoProps","staticProps","_react","_react2","_interopRequireDefault","_reactDom2","_propTypes2","_ModalPortal2","ariaAppHider","obj","__esModule","newObj","default","_interopRequireWildcard","_safeHTMLElement","_safeHTMLElement2","_reactLifecyclesCompat","_classCallCheck","instance","TypeError","_possibleConstructorReturn","self","ReferenceError","isReact16","createPortal","createHTMLElement","name","getCreatePortal","unstable_renderSubtreeIntoContainer","getParentElement","parentSelector","Modal","_Component","_ref","_temp","_this","this","_len","args","Array","_key","__proto__","getPrototypeOf","apply","concat","removePortal","unmountComponentAtNode","node","parent","contains","removeChild","console","warn","portalRef","ref","portal","renderPortal","defaultStyles","subClass","superClass","create","constructor","setPrototypeOf","_inherits","className","appendChild","prevProps","prevParent","nextParent","_","snapshot","_props","isOpen","state","now","Date","closesAt","closeTimeoutMS","beforeClose","closeWithTimeout","setTimeout","element","setElement","Component","propTypes","bool","isRequired","style","shape","content","object","overlay","string","htmlOpenClassName","oneOfType","base","afterOpen","overlayClassName","appElement","instanceOf","SafeHTMLCollection","SafeNodeList","arrayOf","onAfterOpen","func","onRequestClose","number","ariaHideApp","shouldFocusAfterRender","shouldCloseOnOverlayClick","shouldReturnFocusAfterClose","preventScroll","aria","data","role","contentLabel","shouldCloseOnEsc","overlayRef","contentRef","id","overlayElement","contentElement","defaultProps","body","contentEl","children","position","top","left","right","bottom","backgroundColor","border","background","overflow","WebkitOverflowScrolling","borderRadius","outline","padding","polyfill","_typeof","Symbol","iterator","focusManager","_scopeTab2","classList","_portalOpenInstances2","CLASS_NAMES","ariaHiddenInstances","ModalPortal","setOverlayRef","setContentRef","afterClose","_this$props","remove","getElementsByTagName","show","returnFocus","teardownScopedFocus","popWithoutFocus","onAfterClose","deregister","open","beforeOpen","clearTimeout","closeTimer","setState","setupScopedFocus","markForFocusLater","openAnimationFrame","requestAnimationFrame","overlayEl","close","closeWithoutTimeout","focusContent","contentHasFocus","focus","handleKeyDown","event","keyCode","stopPropagation","requestClose","handleOverlayOnClick","shouldClose","ownerHandlesClose","handleContentOnMouseUp","handleOverlayOnMouseDown","preventDefault","handleContentOnClick","handleContentOnMouseDown","shouldBeClosed","activeElement","buildClassName","which","additional","classNames","attributesFromObject","prefix","items","keys","reduce","acc","moveFromContentToOverlay","prevState","cancelAnimationFrame","add","hide","register","_props2","contentStyles","overlayStyles","overlayProps","onClick","onMouseDown","contentProps","tabIndex","onKeyDown","onMouseUp","modal","testId","module","resetState","globalElement","removeAttribute","forEach","querySelectorAll","log","check","nodeName","assertNodeList","useElement","el","validateElement","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","next","done","setAttribute","err","return","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_step2","_iterator2","documentNotReadyOrSSRTesting","_warning","_warning2","nodeList","selector","Error","isArray","HTMLCollection","NodeList","join","_arr","before","after","_i","item","parentNode","instances","_arr2","_i2","_portalOpenInstances","subscribe","eventType","openInstances","opacity","cloneNode","firstChild","insertBefore","lastChild","parentElement","htmlElement","cls","htmlClassList","removeClass","_cls","docBodyClassList","classes","buffer","x","_x","at","classString","classListRef","poll","toLowerCase","split","incrementReference","decrementReference","focusLaterElements","f","handleBlur","handleFocus","push","toFocus","pop","e","modalElement","removeEventListener","detachEvent","_tabbable","_tabbable2","needToFocus","portalOpenInstances","p","PortalOpenInstances","openInstance","indexOf","emit","index","splice","callback","subscribers","subscriber","slice","_exenv","EE","SafeHTMLElement","HTMLElement","tabbable","shiftKey","head","tail","checkSafari","exec","navigator","userAgent","filter","tabbableNode","hidesContents","zeroSize","offsetWidth","offsetHeight","innerHTML","getComputedStyle","getPropertyValue","scrollWidth","scrollHeight","exception","focusable","isTabIndexNotNaN","test","disabled","href","visible","getAttribute","isTabIndexNaN","isNaN","_Modal","_Modal2","factory","charMap","JSON","parse","locales","replace","options","locale","replacement","trim","slug","normalize","result","ch","strict","lower","extend","customMap","Appendix","page","useState","active","setActive","appendixButton","useRef","toggleOverlay","toast","pageData","AppendixItems","handleKeydown","useEffect","map","dangerouslySetInnerHTML","__html","text","AppendixWaypoint","appendixData","find","onChange","isVisible","Message","toastId","slugify","Hero","video","image","title","loaded","setLoaded","prefersReducedMotion","matchMedia","matches","partialVisibility","offset","path","src","muted","autoPlay","loop","playsInline","controls","controlsList","IconExternalLink","width","height","viewBox","xmlns","d","React","AppendixInline","CloseInline","warning"],"sourceRoot":""}