"use strict"; (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([[5401],{ /***/ 50998: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* unused harmony export styles */ /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(87462); /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(45987); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(67294); /* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(86010); /* harmony import */ var _styles_withStyles__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(1591); /* harmony import */ var _ButtonBase__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(41810); /* harmony import */ var _utils_isMuiElement__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(83711); /* harmony import */ var _utils_useForkRef__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(17294); /* harmony import */ var _List_ListContext__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(66987); /* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(73935); var styles = function styles(theme) { return { /* Styles applied to the (normally root) `component` element. May be wrapped by a `container`. */ root: { display: 'flex', justifyContent: 'flex-start', alignItems: 'center', position: 'relative', textDecoration: 'none', width: '100%', boxSizing: 'border-box', textAlign: 'left', paddingTop: 8, paddingBottom: 8, '&$focusVisible': { backgroundColor: theme.palette.action.selected }, '&$selected, &$selected:hover': { backgroundColor: theme.palette.action.selected }, '&$disabled': { opacity: 0.5 } }, /* Styles applied to the `container` element if `children` includes `ListItemSecondaryAction`. */ container: { position: 'relative' }, /* Pseudo-class applied to the `component`'s `focusVisibleClassName` prop if `button={true}`. */ focusVisible: {}, /* Styles applied to the `component` element if dense. */ dense: { paddingTop: 4, paddingBottom: 4 }, /* Styles applied to the `component` element if `alignItems="flex-start"`. */ alignItemsFlexStart: { alignItems: 'flex-start' }, /* Pseudo-class applied to the inner `component` element if `disabled={true}`. */ disabled: {}, /* Styles applied to the inner `component` element if `divider={true}`. */ divider: { borderBottom: "1px solid ".concat(theme.palette.divider), backgroundClip: 'padding-box' }, /* Styles applied to the inner `component` element if `disableGutters={false}`. */ gutters: { paddingLeft: 16, paddingRight: 16 }, /* Styles applied to the inner `component` element if `button={true}`. */ button: { transition: theme.transitions.create('background-color', { duration: theme.transitions.duration.shortest }), '&:hover': { textDecoration: 'none', backgroundColor: theme.palette.action.hover, // Reset on touch devices, it doesn't add specificity '@media (hover: none)': { backgroundColor: 'transparent' } } }, /* Styles applied to the `component` element if `children` includes `ListItemSecondaryAction`. */ secondaryAction: { // Add some space to avoid collision as `ListItemSecondaryAction` // is absolutely positioned. paddingRight: 48 }, /* Pseudo-class applied to the root element if `selected={true}`. */ selected: {} }; }; var useEnhancedEffect = typeof window === 'undefined' ? react__WEBPACK_IMPORTED_MODULE_0__.useEffect : react__WEBPACK_IMPORTED_MODULE_0__.useLayoutEffect; /** * Uses an additional container component if `ListItemSecondaryAction` is the last child. */ var ListItem = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.forwardRef(function ListItem(props, ref) { var _props$alignItems = props.alignItems, alignItems = _props$alignItems === void 0 ? 'center' : _props$alignItems, _props$autoFocus = props.autoFocus, autoFocus = _props$autoFocus === void 0 ? false : _props$autoFocus, _props$button = props.button, button = _props$button === void 0 ? false : _props$button, childrenProp = props.children, classes = props.classes, className = props.className, componentProp = props.component, _props$ContainerCompo = props.ContainerComponent, ContainerComponent = _props$ContainerCompo === void 0 ? 'li' : _props$ContainerCompo, _props$ContainerProps = props.ContainerProps; _props$ContainerProps = _props$ContainerProps === void 0 ? {} : _props$ContainerProps; var ContainerClassName = _props$ContainerProps.className, ContainerProps = (0,_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z)(_props$ContainerProps, ["className"]), _props$dense = props.dense, dense = _props$dense === void 0 ? false : _props$dense, _props$disabled = props.disabled, disabled = _props$disabled === void 0 ? false : _props$disabled, _props$disableGutters = props.disableGutters, disableGutters = _props$disableGutters === void 0 ? false : _props$disableGutters, _props$divider = props.divider, divider = _props$divider === void 0 ? false : _props$divider, focusVisibleClassName = props.focusVisibleClassName, _props$selected = props.selected, selected = _props$selected === void 0 ? false : _props$selected, other = (0,_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z)(props, ["alignItems", "autoFocus", "button", "children", "classes", "className", "component", "ContainerComponent", "ContainerProps", "dense", "disabled", "disableGutters", "divider", "focusVisibleClassName", "selected"]); var context = react__WEBPACK_IMPORTED_MODULE_0__.useContext(_List_ListContext__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z); var childContext = { dense: dense || context.dense || false, alignItems: alignItems }; var listItemRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(null); useEnhancedEffect(function () { if (autoFocus) { if (listItemRef.current) { listItemRef.current.focus(); } else if (false) {} } }, [autoFocus]); var children = react__WEBPACK_IMPORTED_MODULE_0__.Children.toArray(childrenProp); var hasSecondaryAction = children.length && (0,_utils_isMuiElement__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z)(children[children.length - 1], ['ListItemSecondaryAction']); var handleOwnRef = react__WEBPACK_IMPORTED_MODULE_0__.useCallback(function (instance) { // #StrictMode ready listItemRef.current = react_dom__WEBPACK_IMPORTED_MODULE_1__.findDOMNode(instance); }, []); var handleRef = (0,_utils_useForkRef__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z)(handleOwnRef, ref); var componentProps = (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z)({ className: (0,clsx__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z)(classes.root, className, childContext.dense && classes.dense, !disableGutters && classes.gutters, divider && classes.divider, disabled && classes.disabled, button && classes.button, alignItems !== "center" && classes.alignItemsFlexStart, hasSecondaryAction && classes.secondaryAction, selected && classes.selected), disabled: disabled }, other); var Component = componentProp || 'li'; if (button) { componentProps.component = componentProp || 'div'; componentProps.focusVisibleClassName = (0,clsx__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z)(classes.focusVisible, focusVisibleClassName); Component = _ButtonBase__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z; } if (hasSecondaryAction) { // Use div by default. Component = !componentProps.component && !componentProp ? 'div' : Component; // Avoid nesting of li > li. if (ContainerComponent === 'li') { if (Component === 'li') { Component = 'div'; } else if (componentProps.component === 'li') { componentProps.component = 'div'; } } return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_List_ListContext__WEBPACK_IMPORTED_MODULE_3__/* ["default"].Provider */ .Z.Provider, { value: childContext }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(ContainerComponent, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z)({ className: (0,clsx__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z)(classes.container, ContainerClassName), ref: handleRef }, ContainerProps), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(Component, componentProps, children), children.pop())); } return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_List_ListContext__WEBPACK_IMPORTED_MODULE_3__/* ["default"].Provider */ .Z.Provider, { value: childContext }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(Component, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z)({ ref: handleRef }, componentProps), children)); }); false ? 0 : void 0; /* harmony default export */ __webpack_exports__["Z"] = ((0,_styles_withStyles__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z)(styles, { name: 'MuiListItem' })(ListItem)); /***/ }), /***/ 62822: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* unused harmony export styles */ /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(87462); /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(45987); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(67294); /* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(86010); /* harmony import */ var _styles_withStyles__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(1591); /* harmony import */ var _ListContext__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(66987); var styles = { /* Styles applied to the root element. */ root: { listStyle: 'none', margin: 0, padding: 0, position: 'relative' }, /* Styles applied to the root element if `disablePadding={false}`. */ padding: { paddingTop: 8, paddingBottom: 8 }, /* Styles applied to the root element if dense. */ dense: {}, /* Styles applied to the root element if a `subheader` is provided. */ subheader: { paddingTop: 0 } }; var List = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.forwardRef(function List(props, ref) { var children = props.children, classes = props.classes, className = props.className, _props$component = props.component, Component = _props$component === void 0 ? 'ul' : _props$component, _props$dense = props.dense, dense = _props$dense === void 0 ? false : _props$dense, _props$disablePadding = props.disablePadding, disablePadding = _props$disablePadding === void 0 ? false : _props$disablePadding, subheader = props.subheader, other = (0,_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z)(props, ["children", "classes", "className", "component", "dense", "disablePadding", "subheader"]); var context = react__WEBPACK_IMPORTED_MODULE_0__.useMemo(function () { return { dense: dense }; }, [dense]); return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_ListContext__WEBPACK_IMPORTED_MODULE_2__/* ["default"].Provider */ .Z.Provider, { value: context }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(Component, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z)({ className: (0,clsx__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z)(classes.root, className, dense && classes.dense, !disablePadding && classes.padding, subheader && classes.subheader), ref: ref }, other), subheader, children)); }); false ? 0 : void 0; /* harmony default export */ __webpack_exports__["Z"] = ((0,_styles_withStyles__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z)(styles, { name: 'MuiList' })(List)); /***/ }), /***/ 66987: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(67294); /** * @ignore - internal component. */ var ListContext = react__WEBPACK_IMPORTED_MODULE_0__.createContext({}); if (false) {} /* harmony default export */ __webpack_exports__["Z"] = (ListContext); /***/ }), /***/ 5566: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { // EXPORTS __webpack_require__.d(__webpack_exports__, { "Z": function() { return /* binding */ Modal_Modal; } }); // UNUSED EXPORTS: styles // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js var objectWithoutProperties = __webpack_require__(45987); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js var esm_extends = __webpack_require__(87462); // EXTERNAL MODULE: ./node_modules/react/index.js var react = __webpack_require__(67294); // EXTERNAL MODULE: ./node_modules/react-dom/index.js var react_dom = __webpack_require__(73935); // EXTERNAL MODULE: ./node_modules/@material-ui/styles/esm/useTheme/useTheme.js var useTheme = __webpack_require__(159); // EXTERNAL MODULE: ./node_modules/@material-ui/styles/esm/getThemeProps/getThemeProps.js var getThemeProps = __webpack_require__(93869); // EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/utils/ownerDocument.js var ownerDocument = __webpack_require__(30626); // EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/Portal/Portal.js var Portal = __webpack_require__(76234); // EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/utils/createChainedFunction.js var createChainedFunction = __webpack_require__(42959); // EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/utils/useForkRef.js var useForkRef = __webpack_require__(17294); // EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/utils/useEventCallback.js var useEventCallback = __webpack_require__(55192); // EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/styles/zIndex.js var zIndex = __webpack_require__(92781); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js var classCallCheck = __webpack_require__(15671); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js var createClass = __webpack_require__(43144); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 3 modules var toConsumableArray = __webpack_require__(41451); // EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/utils/getScrollbarSize.js var getScrollbarSize = __webpack_require__(75840); // EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/utils/ownerWindow.js var ownerWindow = __webpack_require__(80713); ;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/Modal/ModalManager.js // Is a vertical scrollbar displayed? function isOverflowing(container) { var doc = (0,ownerDocument/* default */.Z)(container); if (doc.body === container) { return (0,ownerWindow/* default */.Z)(doc).innerWidth > doc.documentElement.clientWidth; } return container.scrollHeight > container.clientHeight; } function ariaHidden(node, show) { if (show) { node.setAttribute('aria-hidden', 'true'); } else { node.removeAttribute('aria-hidden'); } } function getPaddingRight(node) { return parseInt(window.getComputedStyle(node)['padding-right'], 10) || 0; } function ariaHiddenSiblings(container, mountNode, currentNode) { var nodesToExclude = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : []; var show = arguments.length > 4 ? arguments[4] : undefined; var blacklist = [mountNode, currentNode].concat((0,toConsumableArray/* default */.Z)(nodesToExclude)); var blacklistTagNames = ['TEMPLATE', 'SCRIPT', 'STYLE']; [].forEach.call(container.children, function (node) { if (node.nodeType === 1 && blacklist.indexOf(node) === -1 && blacklistTagNames.indexOf(node.tagName) === -1) { ariaHidden(node, show); } }); } function findIndexOf(containerInfo, callback) { var idx = -1; containerInfo.some(function (item, index) { if (callback(item)) { idx = index; return true; } return false; }); return idx; } function handleContainer(containerInfo, props) { var restoreStyle = []; var restorePaddings = []; var container = containerInfo.container; var fixedNodes; if (!props.disableScrollLock) { if (isOverflowing(container)) { // Compute the size before applying overflow hidden to avoid any scroll jumps. var scrollbarSize = (0,getScrollbarSize/* default */.Z)(); restoreStyle.push({ value: container.style.paddingRight, key: 'padding-right', el: container }); // Use computed style, here to get the real padding to add our scrollbar width. container.style['padding-right'] = "".concat(getPaddingRight(container) + scrollbarSize, "px"); // .mui-fixed is a global helper. fixedNodes = (0,ownerDocument/* default */.Z)(container).querySelectorAll('.mui-fixed'); [].forEach.call(fixedNodes, function (node) { restorePaddings.push(node.style.paddingRight); node.style.paddingRight = "".concat(getPaddingRight(node) + scrollbarSize, "px"); }); } // Improve Gatsby support // https://css-tricks.com/snippets/css/force-vertical-scrollbar/ var parent = container.parentElement; var scrollContainer = parent.nodeName === 'HTML' && window.getComputedStyle(parent)['overflow-y'] === 'scroll' ? parent : container; // Block the scroll even if no scrollbar is visible to account for mobile keyboard // screensize shrink. restoreStyle.push({ value: scrollContainer.style.overflow, key: 'overflow', el: scrollContainer }); scrollContainer.style.overflow = 'hidden'; } var restore = function restore() { if (fixedNodes) { [].forEach.call(fixedNodes, function (node, i) { if (restorePaddings[i]) { node.style.paddingRight = restorePaddings[i]; } else { node.style.removeProperty('padding-right'); } }); } restoreStyle.forEach(function (_ref) { var value = _ref.value, el = _ref.el, key = _ref.key; if (value) { el.style.setProperty(key, value); } else { el.style.removeProperty(key); } }); }; return restore; } function getHiddenSiblings(container) { var hiddenSiblings = []; [].forEach.call(container.children, function (node) { if (node.getAttribute && node.getAttribute('aria-hidden') === 'true') { hiddenSiblings.push(node); } }); return hiddenSiblings; } /** * @ignore - do not document. * * Proper state management for containers and the modals in those containers. * Simplified, but inspired by react-overlay's ModalManager class. * Used by the Modal to ensure proper styling of containers. */ var ModalManager = /*#__PURE__*/function () { function ModalManager() { (0,classCallCheck/* default */.Z)(this, ModalManager); // this.modals[modalIndex] = modal this.modals = []; // this.containers[containerIndex] = { // modals: [], // container, // restore: null, // } this.containers = []; } (0,createClass/* default */.Z)(ModalManager, [{ key: "add", value: function add(modal, container) { var modalIndex = this.modals.indexOf(modal); if (modalIndex !== -1) { return modalIndex; } modalIndex = this.modals.length; this.modals.push(modal); // If the modal we are adding is already in the DOM. if (modal.modalRef) { ariaHidden(modal.modalRef, false); } var hiddenSiblingNodes = getHiddenSiblings(container); ariaHiddenSiblings(container, modal.mountNode, modal.modalRef, hiddenSiblingNodes, true); var containerIndex = findIndexOf(this.containers, function (item) { return item.container === container; }); if (containerIndex !== -1) { this.containers[containerIndex].modals.push(modal); return modalIndex; } this.containers.push({ modals: [modal], container: container, restore: null, hiddenSiblingNodes: hiddenSiblingNodes }); return modalIndex; } }, { key: "mount", value: function mount(modal, props) { var containerIndex = findIndexOf(this.containers, function (item) { return item.modals.indexOf(modal) !== -1; }); var containerInfo = this.containers[containerIndex]; if (!containerInfo.restore) { containerInfo.restore = handleContainer(containerInfo, props); } } }, { key: "remove", value: function remove(modal) { var modalIndex = this.modals.indexOf(modal); if (modalIndex === -1) { return modalIndex; } var containerIndex = findIndexOf(this.containers, function (item) { return item.modals.indexOf(modal) !== -1; }); var containerInfo = this.containers[containerIndex]; containerInfo.modals.splice(containerInfo.modals.indexOf(modal), 1); this.modals.splice(modalIndex, 1); // If that was the last modal in a container, clean up the container. if (containerInfo.modals.length === 0) { // The modal might be closed before it had the chance to be mounted in the DOM. if (containerInfo.restore) { containerInfo.restore(); } if (modal.modalRef) { // In case the modal wasn't in the DOM yet. ariaHidden(modal.modalRef, true); } ariaHiddenSiblings(containerInfo.container, modal.mountNode, modal.modalRef, containerInfo.hiddenSiblingNodes, false); this.containers.splice(containerIndex, 1); } else { // Otherwise make sure the next top modal is visible to a screen reader. var nextTop = containerInfo.modals[containerInfo.modals.length - 1]; // as soon as a modal is adding its modalRef is undefined. it can't set // aria-hidden because the dom element doesn't exist either // when modal was unmounted before modalRef gets null if (nextTop.modalRef) { ariaHidden(nextTop.modalRef, false); } } return modalIndex; } }, { key: "isTopModal", value: function isTopModal(modal) { return this.modals.length > 0 && this.modals[this.modals.length - 1] === modal; } }]); return ModalManager; }(); ;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/Unstable_TrapFocus/Unstable_TrapFocus.js /* eslint-disable consistent-return, jsx-a11y/no-noninteractive-tabindex, camelcase */ /** * Utility component that locks focus inside the component. */ function Unstable_TrapFocus(props) { var children = props.children, _props$disableAutoFoc = props.disableAutoFocus, disableAutoFocus = _props$disableAutoFoc === void 0 ? false : _props$disableAutoFoc, _props$disableEnforce = props.disableEnforceFocus, disableEnforceFocus = _props$disableEnforce === void 0 ? false : _props$disableEnforce, _props$disableRestore = props.disableRestoreFocus, disableRestoreFocus = _props$disableRestore === void 0 ? false : _props$disableRestore, getDoc = props.getDoc, isEnabled = props.isEnabled, open = props.open; var ignoreNextEnforceFocus = react.useRef(); var sentinelStart = react.useRef(null); var sentinelEnd = react.useRef(null); var nodeToRestore = react.useRef(); var rootRef = react.useRef(null); // can be removed once we drop support for non ref forwarding class components var handleOwnRef = react.useCallback(function (instance) { // #StrictMode ready rootRef.current = react_dom.findDOMNode(instance); }, []); var handleRef = (0,useForkRef/* default */.Z)(children.ref, handleOwnRef); var prevOpenRef = react.useRef(); react.useEffect(function () { prevOpenRef.current = open; }, [open]); if (!prevOpenRef.current && open && typeof window !== 'undefined') { // WARNING: Potentially unsafe in concurrent mode. // The way the read on `nodeToRestore` is setup could make this actually safe. // Say we render `open={false}` -> `open={true}` but never commit. // We have now written a state that wasn't committed. But no committed effect // will read this wrong value. We only read from `nodeToRestore` in effects // that were committed on `open={true}` // WARNING: Prevents the instance from being garbage collected. Should only // hold a weak ref. nodeToRestore.current = getDoc().activeElement; } react.useEffect(function () { if (!open) { return; } var doc = (0,ownerDocument/* default */.Z)(rootRef.current); // We might render an empty child. if (!disableAutoFocus && rootRef.current && !rootRef.current.contains(doc.activeElement)) { if (!rootRef.current.hasAttribute('tabIndex')) { if (false) {} rootRef.current.setAttribute('tabIndex', -1); } rootRef.current.focus(); } var contain = function contain() { var rootElement = rootRef.current; // Cleanup functions are executed lazily in React 17. // Contain can be called between the component being unmounted and its cleanup function being run. if (rootElement === null) { return; } if (!doc.hasFocus() || disableEnforceFocus || !isEnabled() || ignoreNextEnforceFocus.current) { ignoreNextEnforceFocus.current = false; return; } if (rootRef.current && !rootRef.current.contains(doc.activeElement)) { rootRef.current.focus(); } }; var loopFocus = function loopFocus(event) { // 9 = Tab if (disableEnforceFocus || !isEnabled() || event.keyCode !== 9) { return; } // Make sure the next tab starts from the right place. if (doc.activeElement === rootRef.current) { // We need to ignore the next contain as // it will try to move the focus back to the rootRef element. ignoreNextEnforceFocus.current = true; if (event.shiftKey) { sentinelEnd.current.focus(); } else { sentinelStart.current.focus(); } } }; doc.addEventListener('focus', contain, true); doc.addEventListener('keydown', loopFocus, true); // With Edge, Safari and Firefox, no focus related events are fired when the focused area stops being a focused area // e.g. https://bugzilla.mozilla.org/show_bug.cgi?id=559561. // // The whatwg spec defines how the browser should behave but does not explicitly mention any events: // https://html.spec.whatwg.org/multipage/interaction.html#focus-fixup-rule. var interval = setInterval(function () { contain(); }, 50); return function () { clearInterval(interval); doc.removeEventListener('focus', contain, true); doc.removeEventListener('keydown', loopFocus, true); // restoreLastFocus() if (!disableRestoreFocus) { // In IE 11 it is possible for document.activeElement to be null resulting // in nodeToRestore.current being null. // Not all elements in IE 11 have a focus method. // Once IE 11 support is dropped the focus() call can be unconditional. if (nodeToRestore.current && nodeToRestore.current.focus) { nodeToRestore.current.focus(); } nodeToRestore.current = null; } }; }, [disableAutoFocus, disableEnforceFocus, disableRestoreFocus, isEnabled, open]); return /*#__PURE__*/react.createElement(react.Fragment, null, /*#__PURE__*/react.createElement("div", { tabIndex: 0, ref: sentinelStart, "data-test": "sentinelStart" }), /*#__PURE__*/react.cloneElement(children, { ref: handleRef }), /*#__PURE__*/react.createElement("div", { tabIndex: 0, ref: sentinelEnd, "data-test": "sentinelEnd" })); } false ? 0 : void 0; if (false) {} /* harmony default export */ var Unstable_TrapFocus_Unstable_TrapFocus = (Unstable_TrapFocus); ;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/Modal/SimpleBackdrop.js var styles = { /* Styles applied to the root element. */ root: { zIndex: -1, position: 'fixed', right: 0, bottom: 0, top: 0, left: 0, backgroundColor: 'rgba(0, 0, 0, 0.5)', WebkitTapHighlightColor: 'transparent' }, /* Styles applied to the root element if `invisible={true}`. */ invisible: { backgroundColor: 'transparent' } }; /** * @ignore - internal component. */ var SimpleBackdrop = /*#__PURE__*/react.forwardRef(function SimpleBackdrop(props, ref) { var _props$invisible = props.invisible, invisible = _props$invisible === void 0 ? false : _props$invisible, open = props.open, other = (0,objectWithoutProperties/* default */.Z)(props, ["invisible", "open"]); return open ? /*#__PURE__*/react.createElement("div", (0,esm_extends/* default */.Z)({ "aria-hidden": true, ref: ref }, other, { style: (0,esm_extends/* default */.Z)({}, styles.root, invisible ? styles.invisible : {}, other.style) })) : null; }); false ? 0 : void 0; /* harmony default export */ var Modal_SimpleBackdrop = (SimpleBackdrop); ;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/Modal/Modal.js function getContainer(container) { container = typeof container === 'function' ? container() : container; return react_dom.findDOMNode(container); } function getHasTransition(props) { return props.children ? props.children.props.hasOwnProperty('in') : false; } // A modal manager used to track and manage the state of open Modals. // Modals don't open on the server so this won't conflict with concurrent requests. var defaultManager = new ModalManager(); var Modal_styles = function styles(theme) { return { /* Styles applied to the root element. */ root: { position: 'fixed', zIndex: theme.zIndex.modal, right: 0, bottom: 0, top: 0, left: 0 }, /* Styles applied to the root element if the `Modal` has exited. */ hidden: { visibility: 'hidden' } }; }; /** * Modal is a lower-level construct that is leveraged by the following components: * * - [Dialog](/api/dialog/) * - [Drawer](/api/drawer/) * - [Menu](/api/menu/) * - [Popover](/api/popover/) * * If you are creating a modal dialog, you probably want to use the [Dialog](/api/dialog/) component * rather than directly using Modal. * * This component shares many concepts with [react-overlays](https://react-bootstrap.github.io/react-overlays/#modals). */ var Modal = /*#__PURE__*/react.forwardRef(function Modal(inProps, ref) { var theme = (0,useTheme/* default */.Z)(); var props = (0,getThemeProps/* default */.Z)({ name: 'MuiModal', props: (0,esm_extends/* default */.Z)({}, inProps), theme: theme }); var _props$BackdropCompon = props.BackdropComponent, BackdropComponent = _props$BackdropCompon === void 0 ? Modal_SimpleBackdrop : _props$BackdropCompon, BackdropProps = props.BackdropProps, children = props.children, _props$closeAfterTran = props.closeAfterTransition, closeAfterTransition = _props$closeAfterTran === void 0 ? false : _props$closeAfterTran, container = props.container, _props$disableAutoFoc = props.disableAutoFocus, disableAutoFocus = _props$disableAutoFoc === void 0 ? false : _props$disableAutoFoc, _props$disableBackdro = props.disableBackdropClick, disableBackdropClick = _props$disableBackdro === void 0 ? false : _props$disableBackdro, _props$disableEnforce = props.disableEnforceFocus, disableEnforceFocus = _props$disableEnforce === void 0 ? false : _props$disableEnforce, _props$disableEscapeK = props.disableEscapeKeyDown, disableEscapeKeyDown = _props$disableEscapeK === void 0 ? false : _props$disableEscapeK, _props$disablePortal = props.disablePortal, disablePortal = _props$disablePortal === void 0 ? false : _props$disablePortal, _props$disableRestore = props.disableRestoreFocus, disableRestoreFocus = _props$disableRestore === void 0 ? false : _props$disableRestore, _props$disableScrollL = props.disableScrollLock, disableScrollLock = _props$disableScrollL === void 0 ? false : _props$disableScrollL, _props$hideBackdrop = props.hideBackdrop, hideBackdrop = _props$hideBackdrop === void 0 ? false : _props$hideBackdrop, _props$keepMounted = props.keepMounted, keepMounted = _props$keepMounted === void 0 ? false : _props$keepMounted, _props$manager = props.manager, manager = _props$manager === void 0 ? defaultManager : _props$manager, onBackdropClick = props.onBackdropClick, onClose = props.onClose, onEscapeKeyDown = props.onEscapeKeyDown, onRendered = props.onRendered, open = props.open, other = (0,objectWithoutProperties/* default */.Z)(props, ["BackdropComponent", "BackdropProps", "children", "closeAfterTransition", "container", "disableAutoFocus", "disableBackdropClick", "disableEnforceFocus", "disableEscapeKeyDown", "disablePortal", "disableRestoreFocus", "disableScrollLock", "hideBackdrop", "keepMounted", "manager", "onBackdropClick", "onClose", "onEscapeKeyDown", "onRendered", "open"]); var _React$useState = react.useState(true), exited = _React$useState[0], setExited = _React$useState[1]; var modal = react.useRef({}); var mountNodeRef = react.useRef(null); var modalRef = react.useRef(null); var handleRef = (0,useForkRef/* default */.Z)(modalRef, ref); var hasTransition = getHasTransition(props); var getDoc = function getDoc() { return (0,ownerDocument/* default */.Z)(mountNodeRef.current); }; var getModal = function getModal() { modal.current.modalRef = modalRef.current; modal.current.mountNode = mountNodeRef.current; return modal.current; }; var handleMounted = function handleMounted() { manager.mount(getModal(), { disableScrollLock: disableScrollLock }); // Fix a bug on Chrome where the scroll isn't initially 0. modalRef.current.scrollTop = 0; }; var handleOpen = (0,useEventCallback/* default */.Z)(function () { var resolvedContainer = getContainer(container) || getDoc().body; manager.add(getModal(), resolvedContainer); // The element was already mounted. if (modalRef.current) { handleMounted(); } }); var isTopModal = react.useCallback(function () { return manager.isTopModal(getModal()); }, [manager]); var handlePortalRef = (0,useEventCallback/* default */.Z)(function (node) { mountNodeRef.current = node; if (!node) { return; } if (onRendered) { onRendered(); } if (open && isTopModal()) { handleMounted(); } else { ariaHidden(modalRef.current, true); } }); var handleClose = react.useCallback(function () { manager.remove(getModal()); }, [manager]); react.useEffect(function () { return function () { handleClose(); }; }, [handleClose]); react.useEffect(function () { if (open) { handleOpen(); } else if (!hasTransition || !closeAfterTransition) { handleClose(); } }, [open, handleClose, hasTransition, closeAfterTransition, handleOpen]); if (!keepMounted && !open && (!hasTransition || exited)) { return null; } var handleEnter = function handleEnter() { setExited(false); }; var handleExited = function handleExited() { setExited(true); if (closeAfterTransition) { handleClose(); } }; var handleBackdropClick = function handleBackdropClick(event) { if (event.target !== event.currentTarget) { return; } if (onBackdropClick) { onBackdropClick(event); } if (!disableBackdropClick && onClose) { onClose(event, 'backdropClick'); } }; var handleKeyDown = function handleKeyDown(event) { // The handler doesn't take event.defaultPrevented into account: // // event.preventDefault() is meant to stop default behaviours like // clicking a checkbox to check it, hitting a button to submit a form, // and hitting left arrow to move the cursor in a text input etc. // Only special HTML elements have these default behaviors. if (event.key !== 'Escape' || !isTopModal()) { return; } if (onEscapeKeyDown) { onEscapeKeyDown(event); } if (!disableEscapeKeyDown) { // Swallow the event, in case someone is listening for the escape key on the body. event.stopPropagation(); if (onClose) { onClose(event, 'escapeKeyDown'); } } }; var inlineStyle = Modal_styles(theme || { zIndex: zIndex/* default */.Z }); var childProps = {}; if (children.props.tabIndex === undefined) { childProps.tabIndex = children.props.tabIndex || '-1'; } // It's a Transition like component if (hasTransition) { childProps.onEnter = (0,createChainedFunction/* default */.Z)(handleEnter, children.props.onEnter); childProps.onExited = (0,createChainedFunction/* default */.Z)(handleExited, children.props.onExited); } return /*#__PURE__*/react.createElement(Portal/* default */.Z, { ref: handlePortalRef, container: container, disablePortal: disablePortal }, /*#__PURE__*/react.createElement("div", (0,esm_extends/* default */.Z)({ ref: handleRef, onKeyDown: handleKeyDown, role: "presentation" }, other, { style: (0,esm_extends/* default */.Z)({}, inlineStyle.root, !open && exited ? inlineStyle.hidden : {}, other.style) }), hideBackdrop ? null : /*#__PURE__*/react.createElement(BackdropComponent, (0,esm_extends/* default */.Z)({ open: open, onClick: handleBackdropClick }, BackdropProps)), /*#__PURE__*/react.createElement(Unstable_TrapFocus_Unstable_TrapFocus, { disableEnforceFocus: disableEnforceFocus, disableAutoFocus: disableAutoFocus, disableRestoreFocus: disableRestoreFocus, getDoc: getDoc, isEnabled: isTopModal, open: open }, /*#__PURE__*/react.cloneElement(children, childProps)))); }); false ? 0 : void 0; /* harmony default export */ var Modal_Modal = (Modal); /***/ }), /***/ 76234: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(67294); /* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(73935); /* harmony import */ var _utils_setRef__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(34236); /* harmony import */ var _utils_useForkRef__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(17294); function getContainer(container) { container = typeof container === 'function' ? container() : container; // #StrictMode ready return react_dom__WEBPACK_IMPORTED_MODULE_1__.findDOMNode(container); } var useEnhancedEffect = typeof window !== 'undefined' ? react__WEBPACK_IMPORTED_MODULE_0__.useLayoutEffect : react__WEBPACK_IMPORTED_MODULE_0__.useEffect; /** * Portals provide a first-class way to render children into a DOM node * that exists outside the DOM hierarchy of the parent component. */ var Portal = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.forwardRef(function Portal(props, ref) { var children = props.children, container = props.container, _props$disablePortal = props.disablePortal, disablePortal = _props$disablePortal === void 0 ? false : _props$disablePortal, onRendered = props.onRendered; var _React$useState = react__WEBPACK_IMPORTED_MODULE_0__.useState(null), mountNode = _React$useState[0], setMountNode = _React$useState[1]; var handleRef = (0,_utils_useForkRef__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z)( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.isValidElement(children) ? children.ref : null, ref); useEnhancedEffect(function () { if (!disablePortal) { setMountNode(getContainer(container) || document.body); } }, [container, disablePortal]); useEnhancedEffect(function () { if (mountNode && !disablePortal) { (0,_utils_setRef__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z)(ref, mountNode); return function () { (0,_utils_setRef__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z)(ref, null); }; } return undefined; }, [ref, mountNode, disablePortal]); useEnhancedEffect(function () { if (onRendered && (mountNode || disablePortal)) { onRendered(); } }, [onRendered, mountNode, disablePortal]); if (disablePortal) { if ( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.isValidElement(children)) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.cloneElement(children, { ref: handleRef }); } return children; } return mountNode ? /*#__PURE__*/react_dom__WEBPACK_IMPORTED_MODULE_1__.createPortal(children, mountNode) : mountNode; }); false ? 0 : void 0; if (false) {} /* harmony default export */ __webpack_exports__["Z"] = (Portal); /***/ }), /***/ 22318: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* unused harmony export styles */ /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(87462); /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(45987); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(67294); /* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(86010); /* harmony import */ var _styles_withStyles__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(1591); /* harmony import */ var _utils_capitalize__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(93871); var styles = function styles(theme) { return { /* Styles applied to the root element. */ root: { margin: 0 }, /* Styles applied to the root element if `variant="body2"`. */ body2: theme.typography.body2, /* Styles applied to the root element if `variant="body1"`. */ body1: theme.typography.body1, /* Styles applied to the root element if `variant="caption"`. */ caption: theme.typography.caption, /* Styles applied to the root element if `variant="button"`. */ button: theme.typography.button, /* Styles applied to the root element if `variant="h1"`. */ h1: theme.typography.h1, /* Styles applied to the root element if `variant="h2"`. */ h2: theme.typography.h2, /* Styles applied to the root element if `variant="h3"`. */ h3: theme.typography.h3, /* Styles applied to the root element if `variant="h4"`. */ h4: theme.typography.h4, /* Styles applied to the root element if `variant="h5"`. */ h5: theme.typography.h5, /* Styles applied to the root element if `variant="h6"`. */ h6: theme.typography.h6, /* Styles applied to the root element if `variant="subtitle1"`. */ subtitle1: theme.typography.subtitle1, /* Styles applied to the root element if `variant="subtitle2"`. */ subtitle2: theme.typography.subtitle2, /* Styles applied to the root element if `variant="overline"`. */ overline: theme.typography.overline, /* Styles applied to the root element if `variant="srOnly"`. Only accessible to screen readers. */ srOnly: { position: 'absolute', height: 1, width: 1, overflow: 'hidden' }, /* Styles applied to the root element if `align="left"`. */ alignLeft: { textAlign: 'left' }, /* Styles applied to the root element if `align="center"`. */ alignCenter: { textAlign: 'center' }, /* Styles applied to the root element if `align="right"`. */ alignRight: { textAlign: 'right' }, /* Styles applied to the root element if `align="justify"`. */ alignJustify: { textAlign: 'justify' }, /* Styles applied to the root element if `nowrap={true}`. */ noWrap: { overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' }, /* Styles applied to the root element if `gutterBottom={true}`. */ gutterBottom: { marginBottom: '0.35em' }, /* Styles applied to the root element if `paragraph={true}`. */ paragraph: { marginBottom: 16 }, /* Styles applied to the root element if `color="inherit"`. */ colorInherit: { color: 'inherit' }, /* Styles applied to the root element if `color="primary"`. */ colorPrimary: { color: theme.palette.primary.main }, /* Styles applied to the root element if `color="secondary"`. */ colorSecondary: { color: theme.palette.secondary.main }, /* Styles applied to the root element if `color="textPrimary"`. */ colorTextPrimary: { color: theme.palette.text.primary }, /* Styles applied to the root element if `color="textSecondary"`. */ colorTextSecondary: { color: theme.palette.text.secondary }, /* Styles applied to the root element if `color="error"`. */ colorError: { color: theme.palette.error.main }, /* Styles applied to the root element if `display="inline"`. */ displayInline: { display: 'inline' }, /* Styles applied to the root element if `display="block"`. */ displayBlock: { display: 'block' } }; }; var defaultVariantMapping = { h1: 'h1', h2: 'h2', h3: 'h3', h4: 'h4', h5: 'h5', h6: 'h6', subtitle1: 'h6', subtitle2: 'h6', body1: 'p', body2: 'p' }; var Typography = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.forwardRef(function Typography(props, ref) { var _props$align = props.align, align = _props$align === void 0 ? 'inherit' : _props$align, classes = props.classes, className = props.className, _props$color = props.color, color = _props$color === void 0 ? 'initial' : _props$color, component = props.component, _props$display = props.display, display = _props$display === void 0 ? 'initial' : _props$display, _props$gutterBottom = props.gutterBottom, gutterBottom = _props$gutterBottom === void 0 ? false : _props$gutterBottom, _props$noWrap = props.noWrap, noWrap = _props$noWrap === void 0 ? false : _props$noWrap, _props$paragraph = props.paragraph, paragraph = _props$paragraph === void 0 ? false : _props$paragraph, _props$variant = props.variant, variant = _props$variant === void 0 ? 'body1' : _props$variant, _props$variantMapping = props.variantMapping, variantMapping = _props$variantMapping === void 0 ? defaultVariantMapping : _props$variantMapping, other = (0,_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z)(props, ["align", "classes", "className", "color", "component", "display", "gutterBottom", "noWrap", "paragraph", "variant", "variantMapping"]); var Component = component || (paragraph ? 'p' : variantMapping[variant] || defaultVariantMapping[variant]) || 'span'; return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(Component, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z)({ className: (0,clsx__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z)(classes.root, className, variant !== 'inherit' && classes[variant], color !== 'initial' && classes["color".concat((0,_utils_capitalize__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z)(color))], noWrap && classes.noWrap, gutterBottom && classes.gutterBottom, paragraph && classes.paragraph, align !== 'inherit' && classes["align".concat((0,_utils_capitalize__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z)(align))], display !== 'initial' && classes["display".concat((0,_utils_capitalize__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z)(display))]), ref: ref }, other)); }); false ? 0 : void 0; /* harmony default export */ __webpack_exports__["Z"] = ((0,_styles_withStyles__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z)(styles, { name: 'MuiTypography' })(Typography)); /***/ }), /***/ 42959: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "Z": function() { return /* binding */ createChainedFunction; } /* harmony export */ }); /** * Safe chained function * * Will only create a new function if needed, * otherwise will pass back existing functions or null. * * @param {function} functions to chain * @returns {function|null} */ function createChainedFunction() { for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) { funcs[_key] = arguments[_key]; } return funcs.reduce(function (acc, func) { if (func == null) { return acc; } if (false) {} return function chainedFunction() { for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { args[_key2] = arguments[_key2]; } acc.apply(this, args); func.apply(this, args); }; }, function () {}); } /***/ }), /***/ 63786: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "Z": function() { return /* binding */ createSvgIcon; } /* harmony export */ }); /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(87462); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(67294); /* harmony import */ var _SvgIcon__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(62087); /** * Private module reserved for @material-ui/x packages. */ function createSvgIcon(path, displayName) { var Component = function Component(props, ref) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_SvgIcon__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z)({ ref: ref }, props), path); }; if (false) {} Component.muiName = _SvgIcon__WEBPACK_IMPORTED_MODULE_1__/* ["default"].muiName */ .Z.muiName; return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.memo( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.forwardRef(Component)); } /***/ }), /***/ 75840: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "Z": function() { return /* binding */ getScrollbarSize; } /* harmony export */ }); // A change of the browser zoom change the scrollbar size. // Credit https://github.com/twbs/bootstrap/blob/3ffe3a5d82f6f561b82ff78d82b32a7d14aed558/js/src/modal.js#L512-L519 function getScrollbarSize() { var scrollDiv = document.createElement('div'); scrollDiv.style.width = '99px'; scrollDiv.style.height = '99px'; scrollDiv.style.position = 'absolute'; scrollDiv.style.top = '-9999px'; scrollDiv.style.overflow = 'scroll'; document.body.appendChild(scrollDiv); var scrollbarSize = scrollDiv.offsetWidth - scrollDiv.clientWidth; document.body.removeChild(scrollDiv); return scrollbarSize; } /***/ }), /***/ 83711: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "Z": function() { return /* binding */ isMuiElement; } /* harmony export */ }); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(67294); function isMuiElement(element, muiNames) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.isValidElement(element) && muiNames.indexOf(element.type.muiName) !== -1; } /***/ }), /***/ 80713: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "Z": function() { return /* binding */ ownerWindow; } /* harmony export */ }); /* harmony import */ var _ownerDocument__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(30626); function ownerWindow(node) { var doc = (0,_ownerDocument__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z)(node); return doc.defaultView || window; } /***/ }), /***/ 15671: /***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "Z": function() { return /* binding */ _classCallCheck; } /* harmony export */ }); function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } /***/ }) }]);