{"version":3,"sources":["webpack:///./node_modules/@restart/ui/esm/ModalManager.js","webpack:///./node_modules/@restart/ui/esm/DataKey.js","webpack:///./node_modules/@restart/ui/esm/getScrollbarWidth.js","webpack:///./node_modules/@restart/ui/esm/useWindow.js","webpack:///./node_modules/@restart/ui/esm/useWaitForDOMRef.js","webpack:///./node_modules/@restart/ui/esm/NoopTransition.js","webpack:///./node_modules/@restart/ui/esm/useRTGTransitionProps.js","webpack:///./node_modules/@restart/ui/esm/utils.js","webpack:///./node_modules/@restart/ui/esm/RTGTransition.js","webpack:///./node_modules/@restart/ui/esm/ImperativeTransition.js","webpack:///./node_modules/@restart/ui/esm/Modal.js"],"names":["OPEN_DATA_ATTRIBUTE","constructor","_ref","arguments","length","undefined","ownerDocument","_ref$handleContainerO","handleContainerOverflow","_ref$isRTL","isRTL","this","modals","getScrollbarWidth","document","window","defaultView","Math","abs","innerWidth","documentElement","clientWidth","getBodyScrollbarWidth","getElement","body","setModalAttributes","_modal","removeModalAttributes","setContainerStyle","containerState","style","overflow","paddingProp","container","scrollBarWidth","parseInt","css","setAttribute","reset","forEach","m","remove","removeContainerStyle","removeAttribute","Object","assign","add","modal","modalIdx","indexOf","push","state","splice","isTopModal","Context","canUseDOM","Provider","useWindow","_slicedToArray","arr","i","Array","isArray","_arrayWithHoles","r","l","t","Symbol","iterator","e","n","u","a","f","o","call","next","done","value","return","_iterableToArrayLimit","minLen","_arrayLikeToArray","prototype","toString","slice","name","from","test","_unsupportedIterableToArray","TypeError","_nonIterableRest","len","arr2","resolveContainerRef","ref","current","getBoundingClientRect","children","inProp","in","onExited","mountOnEnter","unmountOnExit","hasEnteredRef","handleExited","useEventCallback","combinedRef","useMergedRefs","child","_excluded","useRTGTransitionProps","onEnter","onEntering","onEntered","onExit","onExiting","addEndListener","props","source","excluded","key","target","sourceKeys","keys","_objectWithoutPropertiesLoose","childRef","parts","split","major","minor","patch","getReactVersion","nodeRef","mergedRef","normalize","callback","param","handleEnter","handleEntering","handleEntered","handleExit","handleExiting","handleAddEndListener","status","innerProps","Component","component","transitionProps","ImperativeTransition","_ref2","transition","_useState2","exited","setExited","onTransition","isInitialRef","handleTransition","useIsomorphicEffect","stale","element","initial","isStale","useTransition","options","Promise","resolve","then","error","renderTransition","runTransition","manager","useModalManager","provided","modalManager","ModalManager","getManager","dialog","backdrop","setDialogRef","setBackdropRef","Modal","_ref$show","show","_ref$role","role","className","_ref$backdrop","_ref$keyboard","keyboard","onBackdropClick","onEscapeKeyDown","backdropTransition","runBackdropTransition","_ref$autoFocus","autoFocus","_ref$enforceFocus","enforceFocus","_ref$restoreFocus","restoreFocus","restoreFocusOptions","renderDialog","_ref$renderBackdrop","renderBackdrop","providedManager","containerRef","onShow","_ref$onHide","onHide","rest","ownerWindow","onResolved","resolvedRef","setRef","earlyRef","nextRef","useWaitForDOMRef","isMounted","useMounted","prevShow","usePrevious","lastFocusRef","activeElement","handleShow","removeKeydownListenerRef","listen","handleDocumentKeyDown","removeFocusListenerRef","setTimeout","handleEnforceFocus","_modal$dialog$ownerDo","_modal$dialog","currentActiveElement","contains","focus","handleHide","_lastFocusRef$current","useWillUnmount","handleBackdropClick","currentTarget","code","keyCode","isEscKey","defaultPrevented","dialogProps","tabIndex","appear","backdropElement","onClick","createPortal","displayName","Manager"],"mappings":"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","file":"js/639-53d71dea868e21b1796c.chunk.js","sourcesContent":["import css from 'dom-helpers/css';\nimport { dataAttr } from './DataKey';\nimport getBodyScrollbarWidth from './getScrollbarWidth';\nexport const OPEN_DATA_ATTRIBUTE = dataAttr('modal-open');\n\n/**\n * Manages a stack of Modals as well as ensuring\n * body scrolling is is disabled and padding accounted for\n */\nclass ModalManager {\n constructor() {\n let _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n ownerDocument = _ref.ownerDocument,\n _ref$handleContainerO = _ref.handleContainerOverflow,\n handleContainerOverflow = _ref$handleContainerO === void 0 ? true : _ref$handleContainerO,\n _ref$isRTL = _ref.isRTL,\n isRTL = _ref$isRTL === void 0 ? false : _ref$isRTL;\n this.handleContainerOverflow = handleContainerOverflow;\n this.isRTL = isRTL;\n this.modals = [];\n this.ownerDocument = ownerDocument;\n }\n getScrollbarWidth() {\n return getBodyScrollbarWidth(this.ownerDocument);\n }\n getElement() {\n return (this.ownerDocument || document).body;\n }\n setModalAttributes(_modal) {\n // For overriding\n }\n removeModalAttributes(_modal) {\n // For overriding\n }\n setContainerStyle(containerState) {\n const style = {\n overflow: 'hidden'\n };\n\n // we are only interested in the actual `style` here\n // because we will override it\n const paddingProp = this.isRTL ? 'paddingLeft' : 'paddingRight';\n const container = this.getElement();\n containerState.style = {\n overflow: container.style.overflow,\n [paddingProp]: container.style[paddingProp]\n };\n if (containerState.scrollBarWidth) {\n // use computed style, here to get the real padding\n // to add our scrollbar width\n style[paddingProp] = `${parseInt(css(container, paddingProp) || '0', 10) + containerState.scrollBarWidth}px`;\n }\n container.setAttribute(OPEN_DATA_ATTRIBUTE, '');\n css(container, style);\n }\n reset() {\n [...this.modals].forEach(m => this.remove(m));\n }\n removeContainerStyle(containerState) {\n const container = this.getElement();\n container.removeAttribute(OPEN_DATA_ATTRIBUTE);\n Object.assign(container.style, containerState.style);\n }\n add(modal) {\n let modalIdx = this.modals.indexOf(modal);\n if (modalIdx !== -1) {\n return modalIdx;\n }\n modalIdx = this.modals.length;\n this.modals.push(modal);\n this.setModalAttributes(modal);\n if (modalIdx !== 0) {\n return modalIdx;\n }\n this.state = {\n scrollBarWidth: this.getScrollbarWidth(),\n style: {}\n };\n if (this.handleContainerOverflow) {\n this.setContainerStyle(this.state);\n }\n return modalIdx;\n }\n remove(modal) {\n const modalIdx = this.modals.indexOf(modal);\n if (modalIdx === -1) {\n return;\n }\n this.modals.splice(modalIdx, 1);\n\n // if that was the last modal in a container,\n // clean up the container\n if (!this.modals.length && this.handleContainerOverflow) {\n this.removeContainerStyle(this.state);\n }\n this.removeModalAttributes(modal);\n }\n isTopModal(modal) {\n return !!this.modals.length && this.modals[this.modals.length - 1] === modal;\n }\n}\nexport default ModalManager;","export const ATTRIBUTE_PREFIX = `data-rr-ui-`;\nexport const PROPERTY_PREFIX = `rrUi`;\nexport function dataAttr(property) {\n return `${ATTRIBUTE_PREFIX}${property}`;\n}\nexport function dataProp(property) {\n return `${PROPERTY_PREFIX}${property}`;\n}","/**\n * Get the width of the vertical window scrollbar if it's visible\n */\nexport default function getBodyScrollbarWidth() {\n let ownerDocument = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : document;\n const window = ownerDocument.defaultView;\n return Math.abs(window.innerWidth - ownerDocument.documentElement.clientWidth);\n}","import { createContext, useContext } from 'react';\nimport canUseDOM from 'dom-helpers/canUseDOM';\nconst Context = /*#__PURE__*/createContext(canUseDOM ? window : undefined);\nexport const WindowProvider = Context.Provider;\n\n/**\n * The document \"window\" placed in React context. Helpful for determining\n * SSR context, or when rendering into an iframe.\n *\n * @returns the current window\n */\nexport default function useWindow() {\n return useContext(Context);\n}","function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(r, l) { var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\nimport ownerDocument from 'dom-helpers/ownerDocument';\nimport canUseDOM from 'dom-helpers/canUseDOM';\nimport { useState, useEffect } from 'react';\nimport useWindow from './useWindow';\nexport const resolveContainerRef = (ref, document) => {\n if (!canUseDOM) return null;\n if (ref == null) return (document || ownerDocument()).body;\n if (typeof ref === 'function') ref = ref();\n if (ref && 'current' in ref) ref = ref.current;\n if (ref && ('nodeType' in ref || ref.getBoundingClientRect)) return ref;\n return null;\n};\nexport default function useWaitForDOMRef(ref, onResolved) {\n const window = useWindow();\n const _useState = useState(() => resolveContainerRef(ref, window == null ? void 0 : window.document)),\n _useState2 = _slicedToArray(_useState, 2),\n resolvedRef = _useState2[0],\n setRef = _useState2[1];\n if (!resolvedRef) {\n const earlyRef = resolveContainerRef(ref);\n if (earlyRef) setRef(earlyRef);\n }\n useEffect(() => {\n if (onResolved && resolvedRef) {\n onResolved(resolvedRef);\n }\n }, [onResolved, resolvedRef]);\n useEffect(() => {\n const nextRef = resolveContainerRef(ref);\n if (nextRef !== resolvedRef) {\n setRef(nextRef);\n }\n }, [ref, resolvedRef]);\n return resolvedRef;\n}","import useEventCallback from '@restart/hooks/useEventCallback';\nimport useMergedRefs from '@restart/hooks/useMergedRefs';\nimport { cloneElement, useEffect, useRef } from 'react';\nfunction NoopTransition(_ref) {\n let children = _ref.children,\n inProp = _ref.in,\n onExited = _ref.onExited,\n mountOnEnter = _ref.mountOnEnter,\n unmountOnExit = _ref.unmountOnExit;\n const ref = useRef(null);\n const hasEnteredRef = useRef(inProp);\n const handleExited = useEventCallback(onExited);\n useEffect(() => {\n if (inProp) hasEnteredRef.current = true;else {\n handleExited(ref.current);\n }\n }, [inProp, handleExited]);\n const combinedRef = useMergedRefs(ref, children.ref);\n const child = /*#__PURE__*/cloneElement(children, {\n ref: combinedRef\n });\n if (inProp) return child;\n if (unmountOnExit) {\n return null;\n }\n if (!hasEnteredRef.current && mountOnEnter) {\n return null;\n }\n return child;\n}\nexport default NoopTransition;","const _excluded = [\"onEnter\", \"onEntering\", \"onEntered\", \"onExit\", \"onExiting\", \"onExited\", \"addEndListener\", \"children\"];\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nimport { cloneElement, useCallback, useRef } from 'react';\nimport useMergedRefs from '@restart/hooks/useMergedRefs';\nimport { getReactVersion } from './utils';\n/**\n * Normalizes RTG transition callbacks with nodeRef to better support\n * strict mode.\n *\n * @param props Transition props.\n * @returns Normalized transition props.\n */\nexport default function useRTGTransitionProps(_ref) {\n let onEnter = _ref.onEnter,\n onEntering = _ref.onEntering,\n onEntered = _ref.onEntered,\n onExit = _ref.onExit,\n onExiting = _ref.onExiting,\n onExited = _ref.onExited,\n addEndListener = _ref.addEndListener,\n children = _ref.children,\n props = _objectWithoutPropertiesLoose(_ref, _excluded);\n const _getReactVersion = getReactVersion(),\n major = _getReactVersion.major;\n const childRef = major >= 19 ? children.props.ref : children.ref;\n const nodeRef = useRef(null);\n const mergedRef = useMergedRefs(nodeRef, typeof children === 'function' ? null : childRef);\n const normalize = callback => param => {\n if (callback && nodeRef.current) {\n callback(nodeRef.current, param);\n }\n };\n\n /* eslint-disable react-hooks/exhaustive-deps */\n const handleEnter = useCallback(normalize(onEnter), [onEnter]);\n const handleEntering = useCallback(normalize(onEntering), [onEntering]);\n const handleEntered = useCallback(normalize(onEntered), [onEntered]);\n const handleExit = useCallback(normalize(onExit), [onExit]);\n const handleExiting = useCallback(normalize(onExiting), [onExiting]);\n const handleExited = useCallback(normalize(onExited), [onExited]);\n const handleAddEndListener = useCallback(normalize(addEndListener), [addEndListener]);\n /* eslint-enable react-hooks/exhaustive-deps */\n\n return Object.assign({}, props, {\n nodeRef\n }, onEnter && {\n onEnter: handleEnter\n }, onEntering && {\n onEntering: handleEntering\n }, onEntered && {\n onEntered: handleEntered\n }, onExit && {\n onExit: handleExit\n }, onExiting && {\n onExiting: handleExiting\n }, onExited && {\n onExited: handleExited\n }, addEndListener && {\n addEndListener: handleAddEndListener\n }, {\n children: typeof children === 'function' ? (status, innerProps) =>\n // TODO: Types for RTG missing innerProps, so need to cast.\n children(status, Object.assign({}, innerProps, {\n ref: mergedRef\n })) : /*#__PURE__*/cloneElement(children, {\n ref: mergedRef\n })\n });\n}","import * as React from 'react';\nexport function isEscKey(e) {\n return e.code === 'Escape' || e.keyCode === 27;\n}\nexport function getReactVersion() {\n const parts = React.version.split('.');\n return {\n major: +parts[0],\n minor: +parts[1],\n patch: +parts[2]\n };\n}","const _excluded = [\"component\"];\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nimport * as React from 'react';\nimport useRTGTransitionProps from './useRTGTransitionProps';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\n// Normalizes Transition callbacks when nodeRef is used.\nconst RTGTransition = /*#__PURE__*/React.forwardRef((_ref, ref) => {\n let Component = _ref.component,\n props = _objectWithoutPropertiesLoose(_ref, _excluded);\n const transitionProps = useRTGTransitionProps(props);\n return /*#__PURE__*/_jsx(Component, Object.assign({\n ref: ref\n }, transitionProps));\n});\nexport default RTGTransition;","function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(r, l) { var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\nimport useMergedRefs from '@restart/hooks/useMergedRefs';\nimport useEventCallback from '@restart/hooks/useEventCallback';\nimport useIsomorphicEffect from '@restart/hooks/useIsomorphicEffect';\nimport React, { useRef, cloneElement, useState } from 'react';\nimport NoopTransition from './NoopTransition';\nimport RTGTransition from './RTGTransition';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport function useTransition(_ref) {\n let inProp = _ref.in,\n onTransition = _ref.onTransition;\n const ref = useRef(null);\n const isInitialRef = useRef(true);\n const handleTransition = useEventCallback(onTransition);\n useIsomorphicEffect(() => {\n if (!ref.current) {\n return undefined;\n }\n let stale = false;\n handleTransition({\n in: inProp,\n element: ref.current,\n initial: isInitialRef.current,\n isStale: () => stale\n });\n return () => {\n stale = true;\n };\n }, [inProp, handleTransition]);\n useIsomorphicEffect(() => {\n isInitialRef.current = false;\n // this is for strict mode\n return () => {\n isInitialRef.current = true;\n };\n }, []);\n return ref;\n}\n/**\n * Adapts an imperative transition function to a subset of the RTG `<Transition>` component API.\n *\n * ImperativeTransition does not support mounting options or `appear` at the moment, meaning\n * that it always acts like: `mountOnEnter={true} unmountOnExit={true} appear={true}`\n */\nexport default function ImperativeTransition(_ref2) {\n let children = _ref2.children,\n inProp = _ref2.in,\n onExited = _ref2.onExited,\n onEntered = _ref2.onEntered,\n transition = _ref2.transition;\n const _useState = useState(!inProp),\n _useState2 = _slicedToArray(_useState, 2),\n exited = _useState2[0],\n setExited = _useState2[1];\n\n // TODO: I think this needs to be in an effect\n if (inProp && exited) {\n setExited(false);\n }\n const ref = useTransition({\n in: !!inProp,\n onTransition: options => {\n const onFinish = () => {\n if (options.isStale()) return;\n if (options.in) {\n onEntered == null ? void 0 : onEntered(options.element, options.initial);\n } else {\n setExited(true);\n onExited == null ? void 0 : onExited(options.element);\n }\n };\n Promise.resolve(transition(options)).then(onFinish, error => {\n if (!options.in) setExited(true);\n throw error;\n });\n }\n });\n const combinedRef = useMergedRefs(ref, children.ref);\n return exited && !inProp ? null : /*#__PURE__*/cloneElement(children, {\n ref: combinedRef\n });\n}\nexport function renderTransition(component, runTransition, props) {\n if (component) {\n return /*#__PURE__*/_jsx(RTGTransition, Object.assign({}, props, {\n component: component\n }));\n }\n if (runTransition) {\n return /*#__PURE__*/_jsx(ImperativeTransition, Object.assign({}, props, {\n transition: runTransition\n }));\n }\n return /*#__PURE__*/_jsx(NoopTransition, Object.assign({}, props));\n}","function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(r, l) { var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\nconst _excluded = [\"show\", \"role\", \"className\", \"style\", \"children\", \"backdrop\", \"keyboard\", \"onBackdropClick\", \"onEscapeKeyDown\", \"transition\", \"runTransition\", \"backdropTransition\", \"runBackdropTransition\", \"autoFocus\", \"enforceFocus\", \"restoreFocus\", \"restoreFocusOptions\", \"renderDialog\", \"renderBackdrop\", \"manager\", \"container\", \"onShow\", \"onHide\", \"onExit\", \"onExited\", \"onExiting\", \"onEnter\", \"onEntering\", \"onEntered\"];\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\n/* eslint-disable @typescript-eslint/no-use-before-define, react/prop-types */\n\nimport activeElement from 'dom-helpers/activeElement';\nimport contains from 'dom-helpers/contains';\nimport canUseDOM from 'dom-helpers/canUseDOM';\nimport listen from 'dom-helpers/listen';\nimport { useState, useRef, useCallback, useImperativeHandle, forwardRef, useEffect } from 'react';\nimport * as React from 'react';\nimport ReactDOM from 'react-dom';\nimport useMounted from '@restart/hooks/useMounted';\nimport useWillUnmount from '@restart/hooks/useWillUnmount';\nimport usePrevious from '@restart/hooks/usePrevious';\nimport useEventCallback from '@restart/hooks/useEventCallback';\nimport ModalManager from './ModalManager';\nimport useWaitForDOMRef from './useWaitForDOMRef';\nimport useWindow from './useWindow';\nimport { renderTransition } from './ImperativeTransition';\nimport { isEscKey } from './utils';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nlet manager;\nfunction getManager(window) {\n if (!manager) manager = new ModalManager({\n ownerDocument: window == null ? void 0 : window.document\n });\n return manager;\n}\nfunction useModalManager(provided) {\n const window = useWindow();\n const modalManager = provided || getManager(window);\n const modal = useRef({\n dialog: null,\n backdrop: null\n });\n return Object.assign(modal.current, {\n add: () => modalManager.add(modal.current),\n remove: () => modalManager.remove(modal.current),\n isTopModal: () => modalManager.isTopModal(modal.current),\n setDialogRef: useCallback(ref => {\n modal.current.dialog = ref;\n }, []),\n setBackdropRef: useCallback(ref => {\n modal.current.backdrop = ref;\n }, [])\n });\n}\nconst Modal = /*#__PURE__*/forwardRef((_ref, ref) => {\n let _ref$show = _ref.show,\n show = _ref$show === void 0 ? false : _ref$show,\n _ref$role = _ref.role,\n role = _ref$role === void 0 ? 'dialog' : _ref$role,\n className = _ref.className,\n style = _ref.style,\n children = _ref.children,\n _ref$backdrop = _ref.backdrop,\n backdrop = _ref$backdrop === void 0 ? true : _ref$backdrop,\n _ref$keyboard = _ref.keyboard,\n keyboard = _ref$keyboard === void 0 ? true : _ref$keyboard,\n onBackdropClick = _ref.onBackdropClick,\n onEscapeKeyDown = _ref.onEscapeKeyDown,\n transition = _ref.transition,\n runTransition = _ref.runTransition,\n backdropTransition = _ref.backdropTransition,\n runBackdropTransition = _ref.runBackdropTransition,\n _ref$autoFocus = _ref.autoFocus,\n autoFocus = _ref$autoFocus === void 0 ? true : _ref$autoFocus,\n _ref$enforceFocus = _ref.enforceFocus,\n enforceFocus = _ref$enforceFocus === void 0 ? true : _ref$enforceFocus,\n _ref$restoreFocus = _ref.restoreFocus,\n restoreFocus = _ref$restoreFocus === void 0 ? true : _ref$restoreFocus,\n restoreFocusOptions = _ref.restoreFocusOptions,\n renderDialog = _ref.renderDialog,\n _ref$renderBackdrop = _ref.renderBackdrop,\n renderBackdrop = _ref$renderBackdrop === void 0 ? props => /*#__PURE__*/_jsx(\"div\", Object.assign({}, props)) : _ref$renderBackdrop,\n providedManager = _ref.manager,\n containerRef = _ref.container,\n onShow = _ref.onShow,\n _ref$onHide = _ref.onHide,\n onHide = _ref$onHide === void 0 ? () => {} : _ref$onHide,\n onExit = _ref.onExit,\n onExited = _ref.onExited,\n onExiting = _ref.onExiting,\n onEnter = _ref.onEnter,\n onEntering = _ref.onEntering,\n onEntered = _ref.onEntered,\n rest = _objectWithoutPropertiesLoose(_ref, _excluded);\n const ownerWindow = useWindow();\n const container = useWaitForDOMRef(containerRef);\n const modal = useModalManager(providedManager);\n const isMounted = useMounted();\n const prevShow = usePrevious(show);\n const _useState = useState(!show),\n _useState2 = _slicedToArray(_useState, 2),\n exited = _useState2[0],\n setExited = _useState2[1];\n const lastFocusRef = useRef(null);\n useImperativeHandle(ref, () => modal, [modal]);\n if (canUseDOM && !prevShow && show) {\n lastFocusRef.current = activeElement(ownerWindow == null ? void 0 : ownerWindow.document);\n }\n\n // TODO: I think this needs to be in an effect\n if (show && exited) {\n setExited(false);\n }\n const handleShow = useEventCallback(() => {\n modal.add();\n removeKeydownListenerRef.current = listen(document, 'keydown', handleDocumentKeyDown);\n removeFocusListenerRef.current = listen(document, 'focus',\n // the timeout is necessary b/c this will run before the new modal is mounted\n // and so steals focus from it\n () => setTimeout(handleEnforceFocus), true);\n if (onShow) {\n onShow();\n }\n\n // autofocus after onShow to not trigger a focus event for previous\n // modals before this one is shown.\n if (autoFocus) {\n var _modal$dialog$ownerDo, _modal$dialog;\n const currentActiveElement = activeElement((_modal$dialog$ownerDo = (_modal$dialog = modal.dialog) == null ? void 0 : _modal$dialog.ownerDocument) != null ? _modal$dialog$ownerDo : ownerWindow == null ? void 0 : ownerWindow.document);\n if (modal.dialog && currentActiveElement && !contains(modal.dialog, currentActiveElement)) {\n lastFocusRef.current = currentActiveElement;\n modal.dialog.focus();\n }\n }\n });\n const handleHide = useEventCallback(() => {\n modal.remove();\n removeKeydownListenerRef.current == null ? void 0 : removeKeydownListenerRef.current();\n removeFocusListenerRef.current == null ? void 0 : removeFocusListenerRef.current();\n if (restoreFocus) {\n var _lastFocusRef$current;\n // Support: <=IE11 doesn't support `focus()` on svg elements (RB: #917)\n (_lastFocusRef$current = lastFocusRef.current) == null ? void 0 : _lastFocusRef$current.focus == null ? void 0 : _lastFocusRef$current.focus(restoreFocusOptions);\n lastFocusRef.current = null;\n }\n });\n\n // TODO: try and combine these effects: https://github.com/react-bootstrap/react-overlays/pull/794#discussion_r409954120\n\n // Show logic when:\n // - show is `true` _and_ `container` has resolved\n useEffect(() => {\n if (!show || !container) return;\n handleShow();\n }, [show, container, /* should never change: */handleShow]);\n\n // Hide cleanup logic when:\n // - `exited` switches to true\n // - component unmounts;\n useEffect(() => {\n if (!exited) return;\n handleHide();\n }, [exited, handleHide]);\n useWillUnmount(() => {\n handleHide();\n });\n\n // --------------------------------\n\n const handleEnforceFocus = useEventCallback(() => {\n if (!enforceFocus || !isMounted() || !modal.isTopModal()) {\n return;\n }\n const currentActiveElement = activeElement(ownerWindow == null ? void 0 : ownerWindow.document);\n if (modal.dialog && currentActiveElement && !contains(modal.dialog, currentActiveElement)) {\n modal.dialog.focus();\n }\n });\n const handleBackdropClick = useEventCallback(e => {\n if (e.target !== e.currentTarget) {\n return;\n }\n onBackdropClick == null ? void 0 : onBackdropClick(e);\n if (backdrop === true) {\n onHide();\n }\n });\n const handleDocumentKeyDown = useEventCallback(e => {\n if (keyboard && isEscKey(e) && modal.isTopModal()) {\n onEscapeKeyDown == null ? void 0 : onEscapeKeyDown(e);\n if (!e.defaultPrevented) {\n onHide();\n }\n }\n });\n const removeFocusListenerRef = useRef();\n const removeKeydownListenerRef = useRef();\n const handleHidden = function () {\n setExited(true);\n onExited == null ? void 0 : onExited(...arguments);\n };\n if (!container) {\n return null;\n }\n const dialogProps = Object.assign({\n role,\n ref: modal.setDialogRef,\n // apparently only works on the dialog role element\n 'aria-modal': role === 'dialog' ? true : undefined\n }, rest, {\n style,\n className,\n tabIndex: -1\n });\n let dialog = renderDialog ? renderDialog(dialogProps) : /*#__PURE__*/_jsx(\"div\", Object.assign({}, dialogProps, {\n children: /*#__PURE__*/React.cloneElement(children, {\n role: 'document'\n })\n }));\n dialog = renderTransition(transition, runTransition, {\n unmountOnExit: true,\n mountOnEnter: true,\n appear: true,\n in: !!show,\n onExit,\n onExiting,\n onExited: handleHidden,\n onEnter,\n onEntering,\n onEntered,\n children: dialog\n });\n let backdropElement = null;\n if (backdrop) {\n backdropElement = renderBackdrop({\n ref: modal.setBackdropRef,\n onClick: handleBackdropClick\n });\n backdropElement = renderTransition(backdropTransition, runBackdropTransition, {\n in: !!show,\n appear: true,\n mountOnEnter: true,\n unmountOnExit: true,\n children: backdropElement\n });\n }\n return /*#__PURE__*/_jsx(_Fragment, {\n children: /*#__PURE__*/ReactDOM.createPortal( /*#__PURE__*/_jsxs(_Fragment, {\n children: [backdropElement, dialog]\n }), container)\n });\n});\nModal.displayName = 'Modal';\nexport default Object.assign(Modal, {\n Manager: ModalManager\n});"],"sourceRoot":""}